一卡通v2后台数据库设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
更新日期:2003-07-07 更新人:叶性铭
北京新中新银通科技发展有限公司
一卡通2.0后台系统
数据库设计说明书
编号密级版本
秘密V2.0
批准人审核人拟制人
叶性铭
批准日期: / /
一卡通2.0后台系统数据库设计说明书叶性铭更新日期:2003-07-07
目录
一、引言 (2)
1-1编写目的 (2)
1-2背景 (2)
1-3定义 (2)
1-4参考资料 (2)
二、外部设计 (3)
2-1标识符和状态 (3)
2-2使用它的程序 (3)
2-3约定 (3)
2-4专门指导 (3)
2-5支持软件 (3)
三、结构设计 (4)
3-1概念结构设计 (4)
3-2逻辑结构设计 (4)
3-3物理结构设计 (5)
四、运用设计 (6)
4-1数据字典设计 (6)
4-1-1一卡通帐户数据字典 (6)
4-1-2商户和管理帐户数据字典 (8)
4-1-3全局设置数据字典 (9)
4-1-4系统管理和运行环境设置数据字典 (10)
4-1-5流水帐数据字典 (12)
4-1-6报表部分数据字典 (14)
4-2安全保密设计 (17)
北京新中新银通科技发展有限公司第 1 页
一卡通后台系统数据库设计说明书
一、引言
1-1编写目的
此说明书是为了指导设计人员创建数据库,此说明书的预期读者是数据库管理员和应用软件设计人员。
1-2背景
此数据库的名称为“电子钱包数据库”,电子钱包系统使用这个数据库。
1-3定义
1-4参考资料
A. 金龙卡金融化一卡通系统总体概要设计
二、外部设计
2-1标识符和状态
l 数据库名称:SYNTONG
l 访问数据库的用户和密码:school/school_password
2-2使用它的程序
l 电子钱包服务程序dbserve,oserve
2-3约定
命名规则:
中英文对照:
次数:number
商户:mercacc
序列号:seq
缩写:school sch
system sys
number num
account acc
2-4专门指导
表结构参见后面的数据字典设计
2-5支持软件
l 数据库管理系统:Oracle8i Release Notes Release 2 (8.1.6) for SCO UnixWare 7
三、结构设计
3-1概念结构设计
l 一卡通帐户数据字典
l 商户和管理帐户数据字典
l 全局设置数据字典
l 系统管理和运行环境设置数据字典
l 流水帐数据字典
l 报表部分数据字典
3-2逻辑结构设计
数据库中包含如下几个表:
1. 一卡通帐户数据字典
一卡通帐户字典account
开通登记表openinfo
卡销户表close
2. 商户和管理帐户数据字典
商户帐户字典mercacc
3. 全局设置数据字典
学校代码schoolcode
日报字典subject
操作费用设定表fee
各种代码表configinfo
持卡人消费折扣表xfzkl
4. 系统管理和运行环境设置数据字典
组织部门表branch
系统登记表sysregister
系统参数表cszd
操作员表operator
操作员权限表czyqx
事件代码表trcd
系统信息表message
操作员日志表log
5. 流水帐数据字典
交易流水表trjn
补助发放流水表subjn
历史流水表histrjn
收费明细表sfmx
6. 报表部分数据字典
对帐不符清单checklist
业务统计报表sysreport
清算报表qsbb
商户历史表mhistrjn
按部门统计报表deptreport
日报表dayreport
核算单位统计报表ttrj
3-3物理结构设计
无
四、运用设计
4-1数据字典设计
4-1-1一卡通帐户数据字典
一卡通帐户字典account
字段中文名称字段代码数据类型是否为空索引键主键缺省值帐号Account Number(10) Not null √
核算单位SchCode Char(2) Not null
卡ID号CardID Number(10) Not null √
旧卡ID号OldCardID Number(10) null
身份序号IdentityID char(12) null √
姓名Name char(30)Not null
性别Sex char(1)Not null
身份代码PID Char(2)Not null
部门代码DeptCode Char(15)Not null
帐户余额EBagAmt Number(10) Not null
卡内余额CardBalance Number(10) Not null
押金EnsureAmt Number(10) Not null
当前过渡余额TmpBalance Number(10) Not null
上次过渡余额PreTmpBalance Number(10) Not null
当前补助序列号SubSeq Number(5) Not null
上次补助序列号PreSubSeq Number(5) Not null
累计用卡次数UseCardNum Number(5) Not null
自动转帐警戒额TranLimit Number(10) Not null
自动转帐额TransferAmt Number(10) Not null
管理附加费率ManageFeeRate Number(5) Not null
查询密码QueryPin Char(16) Not null
银行帐号BankAcc Char(20) null
证件号Identity Char(20)Null √
证件类型CertifyType Char(3) Null
学工号Sno Char(20)null √
电话Phone Char(20)null
开户日期CreateDateTime Date Not null
有效日期ExpDate Date Not null
操作员代码OperCode Char(3) Not null
卡类型CardType Char(3) Not null
帐户标志Flag char(15) Not null
更新日期ProcDateTime Date Not null
数字签名DigitalSign Char(8) Not null
flag[0]:身份信息变更标志:0_没变更1_已变更
flag[1]:卡状态:0_正常1_预开户2_预销户
flag[2]:挂失:0_正常卡1_挂失
flag[3]:冻结标志:0_正常1_冻结
flag[4]:检查标志:0_正常1_对帐不平2_对帐不平差额超过警戒额
flag[5]:转帐标志:0_停止1_自助2_自动
flag[6]:交费标志:0_自助1_自动
flag[7]:启动密码开关:0_不使用密码限额1_使用密码限额
flag[8]:是否已提银行转帐:0_正常1_已提
flag[9]:是否用身份管理功能:0_无1_有
flag[10]:冻结原因:0_人工冻结1_对帐不平差额超过警戒额
create unique index account_account on account(account)
create unique index account_cardid on account(cardid)
create index account_IdentityID on account(IdentityID)
create index account_sno on account(sno)
create index account_Identity on account(Identity)
create index account_idx on account(schcode,account)
开通登记表openinfo
字段中文名称字段代码数据类型是否为空索引键主键缺省值帐号Account Number(10)Not null √
子系统代码SysCode Number(4) Not null √
日期OpenDate Date Not null
操作员OperCode Char(3) Not null
create unique index openinfo_idx on openinfo(account, SysCode)
卡销户表close
字段中文名称字段代码数据类型是否为空索引键主键缺省值帐号Account Number(10)Not null √
核算单位SchCode Char(2) Not null √
卡号CardID Number(10)Not null
身份序号IdentityID char(12) null √
姓名Name Char(30)Not null
身份代码PID Char(2)Not null
部门代码DeptCode Char(15)Not null
当前过渡余额TmpBalance Number(10))Not null
上次过渡余额PreTmpBalance Number(10))Not null
帐户余额EBagAmt Number(10)Not null
押金EnsureAmt Number(10)Not Null
销户余额DelAmt Number(10)Not Null
销户日期DelDate Date Not Null
帐号标志Flag Char(1)Not Null
操作员OperCode Char(3) Not null
帐号标志:0_未取,1_已取
create unique index close_account on close(account)
create index close_idx on close(schcode,account)
create index close_identityid on close(identityid)
黑名单表blackinfo
字段中文名称字段代码数据类型是否为空索引键主键缺省值IC卡号CARDNO NUMBER(10) NOT NULL P
身份序号NO CHAR(12) Y
创建日期CREATEDATE CHAR(14) NOT NULL
操作员OPERCODE CHAR(3) NOT NULL
create unqiue index blackinfo_cardno on blackinfo(cardno)
create index blackinfo_idx on blackinfo(no)
4-1-2商户和管理帐户数据字典
商户帐户字典mercacc
字段中文名称字段代码数据类型是否为空索引键主键缺省值帐号Account Number(10) Not null √
核算单位SchCode Char(2) Not null √
科目号Subject char(8) Not null
帐户名称MercName char(40) Not null
联系人Linkman char(20) null
卡号CardNo Number(10) Not null
部门代码DeptCode char(15) Not null
上日发生额LastBalance Number(10) Not null
上日发生笔数LastTranNumber Number(10) Not null
本日余额Balance Number(10) Not null
本日发生笔数TranNumber Number(10) Not null
商户编号MercCode Char(10) Null
折扣率DiscountRate Number(5) Not Null
地址Address Char(40) Null
电话Phone Char(20) Null
邮编Zip Char(6) Null
密码Password Char(16) Not null
开户日期OpenDate date Not null
操作员OperCode Char(3) Not null
标志Flag char(10) Not null
数字签名DigitalSign Char(8) Not null
标志:flag[0]商户状态:0_正常1_冻结
create unique index mercacc_account on mercacc(account)
create index mercacc_idx on mercacc(schcode,account)
4-1-3全局设置数据字典
学校代码SchoolCode
字段中文名称字段代码数据类型是否为空索引键主键缺省值核算单位SchCode char(2) Not null √
单位名称Name char(40) Not null
英文名称EnglishName char(80) null
单位地址Address char(80) Not null
备注Remark Varchar2(40) null
create unique index schoolcode_idx on schoolcode(schcode)
日报字典Subject
字段中文名称字段代码数据类型是否为空索引键主键缺省值科目号SubjectCode char(8) Not null √
科目名称SubjectName char(18) Not null
科目简称ShortName char(12) Not null
上级科目SuperSubject char(8) null
在日报中的序号Sequence Number(3) Not null
标志Flag char(10) Not null
标志:flag[0]:0_负责类,1_资产类
flag[1]:0_借方,1_贷方
flag[2]:0_汇总科目 1-9_科目级别
Flag[3]:1_明细科目0_否
Flag[4]:0_该科目不能删除1_该科目能删除
Flag[5]:0_该科目余额不自动清算1_该科目余额自动清算
create unique index subject_idx on subject(subjectcode)
操作费用设定表fee
字段中文名称字段代码数据类型是否为空索引键主键缺省值费用代码FeeCode Char(3)Not null √
费用名称FeeName Char(20)Not null
核算单位SchCode Char(2) Not null
事件代码TranCode Char(2)Not null
身份类型PID Char(2)Not null
费用FeeAmt Number(10)Not null
收费比率FeeAmtRate Number(5) Not null
费用使用标志FeeFlag Char(2) Not null
FeeFlag[0]:0_手续费1_押金
FeeFlag[1]:0_使用FeeAmt,1_使用FeeAmtRate (该标志对手续费其作用)
create unique index fee_idx on fee(feecode)
各种代码字典ConfigInfo
字段中文名称字段代码数据类型是否为空索引键主键缺省值代码Code Char(3) Not null √
名称Name char(40) Not null
助记码AssistantCode Char(10)null
类别Type Char(2) Not null √
类别:01_民族02_国籍03_补助04_扣款05_消费类型 06_证件类型 07_系统类型08_卡类型
create unique index configinfo_idx on configinfo(type,code)
持卡人消费折扣表xfzkl
字段中文名称字段代码数据类型是否为空索引键主键缺省值子系统代码SysCode Number(4) Not null √
身份代码Pid char(3) Not null √
折扣率DiscountRate Number(5) Not null
create unique index xfzkl_idx on xfzkl(syscode,pid)
4-1-4系统管理和运行环境设置数据字典
组织部门表branch
字段中文名称字段代码数据类型是否为空索引键主键缺省值部门代码DeptCode Char(3)Not null √
助记码AssistantCode Char(10)null
部门名称Name Char(30)Not null
上级部门代码SuDeptCode char(3)null
部门级别DeptLevel Char(1)Not null
部门类型DeptType Char(1) Not null
DeptType:0_持卡人部门1_商户部门
create unique index branch_idx on branch(DeptCode)
系统登记表sysregister
字段中文名称字段代码数据类型是否为空索引键主键缺省值系统代码SysCode Number(4) Not null √
核算单位SchCode Char(2) Not null √
系统名称SysName char(40) Not null
系统类型SysType Char(3) Not null
处理机代码CompCode char(3)Not null
IP地址IP Char(15)Not null
端口号port Number(5) Not null
地址Address char(40) null
电话Phone char(20) null
同步类型EnableFlag char(1)Not null
备注Remark char(10)null
create unique index sysregister_syscode on sysregister(SysCode)
create index sysregister_idx on sysregister(SchCode,SysCode)
系统参数cszd
字段中文名称字段代码数据类型是否为空索引键主键缺省值代码code Char(3) Not null √
名称name char(20) Not null
值value char(20) Not null
备注Remark char(40) null
标志Flag Char(2) Not null
Flag[0]:0_不能手工修改参数值1_可以手工修改参数值
create unique index cszd_idx on cszd(code)
操作员表operator
字段中文名称字段代码数据类型是否为空索引键主键缺省值操作员代码OperCode char(3)Not null √
操作员姓名Opername char(20)Not null
学校代码SchCode Char(2) Not null
密码OperPIN Char(16)Not null
操作员权限OperLevel char(100)Not null
子系统代码SysCode Number(4)null
标志Flag char(10)Not null
启用日期StartDate date Not null
停用日期ExpDate date Not null
Flag[0]:操作员状态:0_正常,1_停用
Flag[1]:操作员类型:0_系统操作员,1_商户操作员
create unique index operator_idx on operator(opercode)
商户操作员权限表czyqx
字段中文名称字段代码数据类型是否为空索引键主键缺省值操作员代码OperCode char(3)Not null √
商户帐号Account Number(10)Not null
Create unique index czyqx_idx on czyqx(opercode,account)
事件代码表trcd
字段中文名称字段代码数据类型是否为空索引键主键缺省值事件代码TranCode Char(2)Not null √
名称TranName char(40) Not null
标志FLAG Char(10) Not null
Flag[0]:0_不收手续费 1_收手续费
Flag[1]:0_不收押金 1_收押金
Flag[2]:0_不显示 1_显示
Flag[3]:0_不能撤销 1_可以撤销
Flag[4]:0_不能在别的核算单位子系统操作 1_可以在别的核算单位子系统操作
create unique index trcd_idx on trcd(trancode)
系统信息表message
字段中文名称字段代码数据类型是否为空索引键主键缺省值消息代码MsgCode number(4)Not null √
消息正文Describe varchar2(250)null
create unique index message_idx on message(MsgCode)
操作员日志表log
字段中文名称字段代码数据类型是否为空索引键主键缺省值日期时间ProcessDate Date Not null √
操作员代码OperCode Char(3)Not null
系统原设置OldValue Varchar2(150)null
系统新设置NewValue varchar2(150)null
create index trace_idx on trace(to_char(ProcessDate,’yyyymmdd’))
4-1-5流水帐数据字典
交易流水表trjn
字段中文名称字段代码数据类型是否为空索引键主键缺省值帐号FromAccount Number(10)Not null
开户核算单位OpenLocation Char(2) Not null
交易核算单位TradeLocation Char(2) Not null
发端流水号FromJnNumber Number(10)Not null √
对方帐号ToAccount Number(10)Not null
子系统代码SysCode Number(4) Not null √
POS号PosCode Number(3) Not null
餐次DineSeq Number(1) Not null
操作员OperCode char(3)Not null
事件代码TranCode Char(2)Not null
状态JournalStatus char(1)Not null
流水发生日期时间JnDateTime Date Not null
入帐日期时间EffectDate Date Not null
卡内余额CardBalance Number(8)Not null
累计用卡次数UsedCardNum Number(5)Not null
补助序列号SubSeq Number(5)Not null
交易额TranAmt Number(10)Not null
押金EnsureAmt Number(8) Not null
管理费FeeAmt Number(8) Not null
消费类型ConsumeType Char(3) Not null
摘要Resume Char(10) null
JournalStatus:0_正常1_冲正2_被冲正3_错帐
create unique index trjn_idx on trjn(syscode,fromjnnumber)
create index trjn_fromaccount on trjn(fromaccount)
历史流水表histrjn
字段中文名称字段代码数据类型是否为空索引键主键缺省值入帐日期LogicDate Char(8) Not null √
帐号FromAccount Number(10)Not null √
开户核算单位OpenLocation Char(2) Not null
交易核算单位TradeLocation Char(2) Not null
发端流水号FromJnNumber Number(10)Not null
对方帐号ToAccount Number(10)Not null
子系统代码SysCode Number(4) Not null
POS号PosCode Number(3) Not null
餐次DineSeq Number(1) Not null
操作员OperCode char(3)Not null
事件代码TranCode Char(2)Not null
状态JournalStatus char(1)Not null
流水发生日期时间JnDateTime date Not null
入帐日期时间EffectDate date Not null
卡内余额CardBalance Number(8)Not null
累计用卡次数UsedCardNum Number(5)Not null
补助序列号SubSeq Number(5)Not null
交易额TranAmt Number(16)Not null
押金EnsureAmt Number(16) Not null
管理费FeeAmt Number(16) Not null
消费类型ConsumeType Char(3) Not null
摘要Resume Char(10) null
create index histrjn_logicdate on histrjn(logicdate)
create index histrjn_fromaccount on histrjn(fromaccount)
补助发放流水表SUBJN
字段中文名称字段代码数据类型是否为空索引键主键缺省值核算单位SchCode Char(2) Not null
帐号FromAccount Number(10)Not null √
发端流水号FromJnNumber Number(10) Not null √
日期时间JnDateTime date Not null √
补助批号BatchNo Number(10) Not null √
子系统代码SysCode Number(4) Not null √
事件代码TranCode Char(2) Not null
发放款项的帐号ToAccount Number(10) Not null
补助序列号SubSeq Number(5) Not null
补助金额SubAmt Number(10) Not null
补助类型SubType Char(3) Not null
补助状态SubJnStatus Char(1) Not null
操作员OperCode Char(3) Not null
摘要Resume Char(10) null
create index subjn_fromaccount on subjn(fromaccount)
create index subjn_batchno on subjn(batchno)
create unique index subjn_idx on subjn(fromjnnumber,syscode,to_char(jndatetime,'yyyymmdd'))
收费明细表sfmx
字段中文名称字段代码数据类型是否为空索引键主键缺省值核算单位SchCode Char(2) Not null √
子系统代码SysCode Number(4) Not null √
交费持卡人帐号FromAccount Number(10) Not null √
交费ID号FeeID Number(10) Not null √
姓名Name Char(30) Not null
收费商户帐号ToAccount Number (10) Not null
交费金额TranAmt Number (10) Not null
费用类型ConsumeType Char(3) Not null
通知日期NoticeDate DATE Not null
交费日期FeeDate DATE Not Null
操作员OperCode Char(3) Not null
交费标志FeeFlag char(5) Not Null
费用描述FeeDesc Char(30) null
FeeFlag[0]:0_自助交费 1_自动交费
FeeFlag[1]:0_校园卡交费 1_银行卡交费
FeeFlag[2]:0_已交费 1_未交费
create unique index sfmx_idx on sfmx(Account,FeeID)
create index sfmx_schcode on sfmx(SchCode,FromAccount)
create index sfmx_SysCode on sfmx(SysCode,FromAccount)
4-1-6报表部分数据字典
对帐不符清单checklist
字段中文名称字段代码数据类型是否为空索引键主键缺省值对帐日期CompareDate Char(8)Not null √
帐号Account Number(10)Not null √
库余额EbagAmt Number(10) Not null
卡内余额CardBalance Number(10)Not null
差额MarginAmt Number(10)Not null
对帐序列号CompareSeq Number(6)Not null
create index checklist_idx on check_list(Account,compareDate)
字段中文名称字段代码数据类型是否为空索引键主键缺省值报表日期ReportDate Char(8) Not null √
核算单位SchCode Char(2) Not null √
事件代码TranCode Char(2) Not null
发生次数TranNumber Number(8) Not null
发生额TranAmt Number(16) Not null
管理费FeeAmt Number(16) Not null
押金EnsureAmt Number(16) Not null
子系统代码sysCode Number(4) Not null
操作员OperCode Char(3) Not null
数字签名DigitalSign Char(8) Not null
create index sysreport_idx on sysreport(ReportDate,SchCode)
清算报表qsbb
字段中文名称字段代码数据类型是否为空索引键主键缺省值日期ReportDate Char(8)Not null √
核算单位SchCode Char(2) Not null √
商户帐号MercAcc Number(10)Not null √
商户名称MercName Char(40)null
商户编号MercCode Char(10)null
发生额TranAmt Number(10)Not null
折扣率DiscountRate Number(5)Not null
实际金额TrueAmt Number(10)Not null
折扣金额DisCountAmt Number(10)Not null
数字签名DigitalSign Char(8) Not null
create index qsbb_idx on qsbb(ReportDate,SchCode,mercacc)
商户历史mhistrjn
字段中文名称字段代码数据类型是否为空索引键主键缺省值日期ReportDate Char(8)Not null √
核算单位SchCode Char(2) Not null √
商户帐号MercAcc Number(10)Not null √
子系统代码SysCode Number(4) Not null
POS号PosCode Number(3)Not null
餐次DineSeq Number(3)Not null
商户名称MercName Char(40)null
商户编号MercCode Char(10)null
发生额TranAmt Number(10)Not null
发生笔数TranNum Number(10)Not null
数字签名DigitalSign Char(8) Not null
create index mhistrjn_idx on mhistrjn(ReportDate,SchCode,mercacc)
字段中文名称字段代码数据类型是否为空索引键主键缺省值报表日期ReportDate Char(8) Not null √
核算单位SchCode Char(2) Not null √
事件代码TranCode Char(2) Not null
子系统代码SysCode Number(4) Not null
商户帐号Account Number(10) Not null
部门代码DeptCode Char(15)Not null
发生笔数TranNumber Number(10) Not null
发生额TranAmt Number(10) Not null
数字签名DigitalSign Char(8) Not null
create index deptreport_idx on deptreport(reportdate,schcode)
日报表dayreport
字段中文名称字段代码数据类型是否为空索引键主键缺省值核算单位SchCode Char(2) Not null √
日期ReportDate Char(8) Not null √
科目号SubjectCode Char(8) Not null √
上日结存金额PreKeepSum Number(16) Not null
上日结存户数PreKeepAccNum Number(8) Not null
贷金额LoanSum Number(16) Not null
开户数AccOpenNum Number(6) Not null
贷笔数LoanNumber Number(8) Not null
借金额LendSum Number(16) Not null
销户数AccCancelNum Number(6) Not null
借笔数LendNumber Number(8) Not null
本日结存金额OccurKeepSum Number(16) Not null
本日结存户数OccurKeepAccNum Number(8) Not null
数字签名DigitalSign Char(8) Not null
create unique index dayreport_idx on dayreport (reportdate,SchCode, SubjectCode);
核算单位统计报表ttrj
字段中文名称字段代码数据类型是否为空索引键主键缺省值
日期ReportDate Char(8) Not null √
交易核算单位TradeLocation Char(2) Not null √
开户核算单位OpenLocation Char(2) Not null √
科目号SubjectCode Char(8) Not null
开户数AccOpenNum Number(6) Not null
贷笔数LoanNumber Number(8) Not null
贷金额LoanSum Number(16) Not null
销户数AccCancelNum Number(6) Not null
借笔数LendNumber Number(8) Not null
借金额LendSum Number(16) Not null
数字签名DigitalSign Char(8) Not null
标志Flag Char(1) Not null Flag[0]:0_现金1_转帐(暂不用)
Create index ttrj_idx on ttrj(reportdate,tradelocation,openlocation)
4-2安全保密设计
所有的密码字段加密后存放。