SmartTeller软件数据库设计说明书文档格式.docx
《SmartTeller软件数据库设计说明书文档格式.docx》由会员分享,可在线阅读,更多相关《SmartTeller软件数据库设计说明书文档格式.docx(210页珍藏版)》请在冰豆网上搜索。
3.1.7数据库回滚段配置8
3.1.8数据库临时段表空间配置8
3.1.9数据库系统表空间配置9
3.2数据库表设计原则9
3.2.1标准化和规范化9
3.2.2命名规范9
3.2.3数据的一致性和完整性9
3.2.4数据库表空间设计原则9
3.3安全性设计10
3.3.1管理默认用户10
3.3.2数据库级用户权限设计10
3.3.3角色与权限10
3.3.4应用级用户设计10
3.3.5用户密码管理10
3.4备份恢复设计10
3.4.1数据库exp/imp备份恢复10
3.4.2数据库冷备份11
3.4.3Rman备份恢复11
4概述13
5数据库逻辑设计16
5.1柜员管理模块16
5.2机构管理模块17
5.3角色管理模块17
5.4额度管理模块18
5.5设备管理模块18
5.6审计管理模块19
5.7现金管理模块20
5.8凭证管理模块21
5.9参数管理模块22
5.10交易管理模块23
6物理设计23
6.1数据库表结构定义23
6.1.1柜员表(Teller)23
6.1.2柜员状态表(TellerStatus)24
6.1.3柜员休假表(TellerHoliday)24
6.1.4柜员历史密码表(TellerHisPwd)25
6.1.5机构表(Org)25
6.1.6机构级别表(OrgLevel)26
6.1.7现金尾箱表(CashTrailBox)27
6.1.8现金尾箱现金表(TrailBoxCash)27
6.1.9现金尾箱转移表(CashTrailBoxMove)28
6.1.10现金尾箱转移现金表(CashTrailBoxMoveCash)28
6.1.11长短钞登记表(CashSign)29
6.1.12现金尾箱整理表(CashTrailBoxTidy)29
6.1.13凭证尾箱表(VoucherTrailBox)29
6.1.14凭证尾箱凭证表(TrailBoxVoucher)30
6.1.15凭证尾箱历史表(VoucherHistory)31
6.1.16凭证损益登记表(VoucherSign)32
6.1.17额度类型表(LimitType)32
6.1.18额度类型对应表(LimitTypeMap)32
6.1.19柜员额度表(TellerLimit)33
6.1.20机构额度表(OrgLimit)33
6.1.21现金尾箱额度表(CashTrailBoxLimit)33
6.1.22凭证尾箱额度表(VoucherTrailBoxLimit)34
6.1.23交易额度表(TxLimit)34
6.1.24额度定制表(LimitCustom)34
6.1.25角色表(RoleBase)35
6.1.26角色权限表(RoleAuth)35
6.1.27角色分行关联表(RoleConnection)35
6.1.28角色限额表(RoleLimit)35
6.1.29菜单表(Menu)36
6.1.30交易日志表(BTTxLog)36
6.1.31历史交易日志表(HistorLog)38
6.1.32授权日志表(BtAuthLog)40
6.1.33平台交易日志表(PlfTxLog)41
6.1.34利率表(InterestRate)41
6.1.35汇率表(ExchangeRate)42
6.1.36汇率限额表(ExchangeRateLimit)43
6.1.37费率表(FreeRate)44
6.1.38交易表(TxBase)44
6.1.39基本信息表(BaseInfo)46
6.1.40货币表(Currency)46
6.1.41券别币种表(ParValue)47
6.1.42凭证表(Voucher)47
6.1.43错误代码表(ErrorCode)48
6.1.44序号表(SequenceNo)48
6.1.45本外币表(CashDisposal)48
6.1.46现金碰库表(CashEqual)49
6.1.47路径描述表(ScrId)49
6.1.48交易信息表(Txinfo)49
6.1.49交易模型表(TxModual)50
6.1.50在途现金表(OnwayCash)50
6.1.51机构日期表(OrgDate)50
6.1.52杂项参数表(OtherPara)51
6.1.53参数信息表(ParameterInfo)51
6.1.54索引表(TbIndex)52
6.1.55打印单据类型表(prn_receipt_type)52
6.1.56打印单据格式表(prn_receipt_format)52
6.1.57打印单据数据表(prn_receipt_data)53
6.1.58柜员允许经办的币种表(TellerCcy)54
6.1.59机构允许经办的币种表(OrgCcy)54
6.1.60柜员离岗原因表(TellerLeave)55
6.1.61地区代号表(Zone)55
6.1.62业务模块表(Module)55
6.1.63交易类型表(TranType)55
6.1.64交易信息表(txProperty)56
6.1.65角色授权额度表(roleAuthCurrency)56
6.1.66凭证种类表(voucherType)56
6.1.67凭证碰库表(VoucherEqual)57
6.1.68柜员级别表(TellerLevel)57
6.1.69凭证尾箱凭证汇总表(TrailBoxVoucherTypeSum)57
6.1.70检查统计代码表(StatisticsType)58
6.1.71柜员单据检查表(BillCheck)58
6.2数据库创建脚本58
6.3存储过程定义59
6.4Sequence定义59
6.4.1seq_TellerHolidayId59
6.4.2seq_TellerHisPwdId59
6.4.3seq_CashSignId59
6.4.4seq_TxLogId59
6.4.5seq_InfoId59
6.4.6seq_TellerId60
6.4.7seq_TellerLeaveId60
6.4.8seq_BillcheckId60
6.5触发器定义60
6.5.1tr_TellerHolidayId60
6.5.2tr_TellerHisPwdId61
6.5.3tr_CashSignId61
6.5.4tr_VoucherSignId61
6.5.5tr_TxLogId62
6.5.6tr_InfoId62
6.5.7tr_DateId62
1简介
1.1目的
本文档是Sm@rtTeller项目的数据库设计文档,是指导本系统的详细设计和程序编码的唯一数据库设计依据。
本文档的预期读者为最终用户、公司相关人员以及项目组人员。
1.2范围
主要描述本系统的数据库逻辑设计和物理设计,包括实体E-R图、数据库表结构、数据库生成脚本、数据依赖和约束关系等。
1.3参考资料
SmartTeller5.0_平台自有功能_产品需求说明doc
SmartTeller5.0_平台自有功能_软件需求规格说明书.doc
SmartTeller5.0_平台自有功能_需求跟踪矩阵.xls
SmartTeller5.0_平台自有功能_系统架构设计说明书.doc
SmartTeller5.0_系统架构说明.ppt
SmartTeller5.0_功能架构.ppt
SmartTeller5.0_综合前端服务平台.ppt
2数据库环境
DBMS:
Oracle10gDatabaseStandardEdition
操作系统环境:
windowsserver2003
内存要求:
SGA设计在一个合适的范围内:
物理内存的50%—70%。
交换区设计:
当物理内存在2G以下的情况下,交换分区swap为物理内存的3倍,当物理内存>
2G的情况下,swap大小为物理内存的1—2倍。
其他环境变量参考Oracle相关的安装文档和随机文档。
3设计原则与约束
3.1数据库设计原则
3.1.1数据库SID
数据库SID是唯一标志数据库的符号,命名长度不能超过10个字符。
本系统约定为“SmartTeller”。
3.1.2数据库类型选择
采用TransactionProcessing类型。
3.1.3数据库连接类型选择
采用MTS类型。
3.1.4数据库字符集选择
为了使数据库能够正确支持多国语言,必须配置合适的数据库字符集,采用UTF8字符集。
3.1.5数据库其他参数配置
DB_FILES:
Db_files是数据库能够同时打开的文件数量,默认值是200个。
Db_block_size:
db_block_size用比较小的取值范围:
2048或4096
3.1.6数据库日志文件配置
日志文件大小:
800M。
日志文件组数量:
日志文件组为3—5组,每组日志大小保持一致。
日志成员数量:
为了确保日志能够镜象作用,每日志组的成员为2个。
3.1.7数据库回滚段配置
在Oracle10G数据库中,设计Undo表空间取代以前版本的回滚段表空间。
Undo表空间大小的设计规范由以下公式计算:
Undospace=UR*UPS*db_block_size+冗余量
UR:
表示在undo中保持的最长时间数(秒),由数据库参数UNDO_RETENTION值决定。
UPS:
表示在undo中,每秒产生的数据库块数量。
在数据库中保留2小时的回退数据,假定每小时产生200个数据库块。
则Undospace=2*3600*200*4K=5.8G
3.1.8数据库临时段表空间配置
数据库临时段表空间根据实际生产环境情况调整其大小,表空间属性为自动扩展。
3.1.9数据库系统表空间配置
系统表空间大小1G左右,除了存放数据库数据字典的数据外,其他数据不得存储在系统表空间。
3.2数据库表设计原则
3.2.1标准化和规范化
数据的标准化有助于消除数据库中的数据冗余。
标准化有好几种形式,但ThirdNormalForm(3NF)通常被认为在性能、扩展性和数据完整性方面达到了最好平衡。
简单来说,遵守3NF标准的数据库的表设计原则是:
“OneFactinOnePlace”即某个表只包括其本身基本的属性,当不是它们本身所具有的属性时需进行分解。
表之间的关系通过外键相连接。
它具有以下特点:
有一组表专门存放通过键连接起来的关联数据,即:
表内的每一个值都只能被表达一次。
表内的每一行都应该被唯一的标识(有唯一键)。
表内不应该存储依赖于其他键的非键信息。
3.2.2命名规范
不同的数据库产品对对象的命名有不同的要求,因此,数据库中的各种对象的命名、后台程序的代码编写应采用大小写敏感的形式,各种对象命名长度不要超过30个字符,这样便于应用系统适应不同的数据库。
3.2.3数据的一致性和完整性
实体完整性:
主键
参照完整性:
父表中删除数据:
级联删除;
受限删除;
置空值
父表中插入数据:
受限插入;
递归插入
父表中更新数据:
级联更新;
受限更新;
DBMS对参照完整性可以有两种方法实现:
外键实现机制(约束规则)和触发器实现机制。
用户定义完整性:
NOTNULL;
CHECK;
触发器
3.2.4数据库表空间设计原则
表空间大小定义原则:
当表空间大小小于操作系统对最大文件限制时,表空间由一个文件组成。
如果表空间大小大于操作系统对最大文件限制时,该表空间由多个数据文件组成,表空间的总大小为估算为:
Tablespace+sum(数据段+索引段)*150%。
表空间扩展性设计原则:
表空间数据文件采用自动扩展的方式,扩展容量快大小按2的整数倍(1M、2M、4M、8M、16M、32M、64M)进行扩展,创建表空间时尽量采用nologing选项。
表空间的最大限制一般采用unlimited,除非确切知道表空间数据文件的最大使用范围。
(一般windows32位系统的文件最大2G,64位的unix系统系统文件最大128G,也要注意文件格式设定的文件大小),建议最大为2G。
表空间采用local管理方式。
3.3安全性设计
3.3.1管理默认用户
在生产环境中,必须严格管理sys和system用户,必须修改其默认密码,禁止用该用户建立数据库应用对象。
删除或锁定数据库测试用户scott。
3.3.2数据库级用户权限设计
必须按照应用需求,设计不同的用户访问权限。
包括应用系统管理用户,普通用户等,按照业务需求建立不同的应用角色。
用户访问另外的用户对象时,应该通过创建同义词对象synonym进行访问。
3.3.3角色与权限
确定每个角色对数据库表的操作权限,如创建、检索、更新、删除等。
每个角色拥有刚好能够完成任务的权限,不多也不少。
在应用时再为用户分配角色,则每个用户的权限等于他所兼角色的权限之和。
3.3.4应用级用户设计
应用级的用户帐号密码不能与数据库相同,防止用户直接操作数据库。
用户只能用帐号登陆到应用软件,通过应用软件访问数据库,而没有其它途径操作数据库。
3.3.5用户密码管理
用户帐号的密码必须进行加密处理,确保在任何地方的查询都不会出现密码的明文。
3.4备份恢复设计
3.4.1数据库exp/imp备份恢复
Oracle数据库的Exp、Imp提供了数据快速的备份和恢复手段,提供了数据库级、用户级和表级的数据备份恢复方式。
这种方法一般作为数据库辅助备份手段。
1)数据库级备份原则
在数据库的数据量比较小,或数据库初始建立的情况下采用。
不适合7*24的在线生产环境数据库备份。
2)用户级备份原则
在用户对象表数据容量比较小、或则用户对象初始建立的情况下使用。
3)表级备份原则
主要在以下场合采用的备份方式:
参数表备份
静态表备份
分区表的分区备份。
3.4.2数据库冷备份
数据库冷备份必须符合以下原则:
数据库容量比较小。
数据库允许关闭的情况。
3.4.3Rman备份恢复
这种方式适用于7*24环境下的联机热备份情形。
1)Catalog数据库
单独建立备份恢复用的数据库实例,尽可能与生产环境的数据库分开,确保catalog与生产数据库的网络连接良好。
在9I系统使用良好的备份策略以可,支持完全使用控制文件保存catalog信息,备份策略如下:
backupspfileformat'
/data/backup/%d_SPFILE_%T_%s_%p.bak'
;
sql"
altersystemarchivelogcurrent"
backuparchivelogallformat'
/data/backup/%d_ARC_%T_%s_%p.bak'
deleteallinput;
backupcurrentcontrolfileformat'
/data/backup/%d_CTL_%T_%s_%p.bak'
在spfile、控制文件、数据库全丢的情况下可通过下面的方式恢复
RMAN>
connecttarget
connectedtotargetdatabase(notstarted)
startup
restorespfilefrom'
/data/backup/COMMDB_SPFILE_20030411_9_1.bak'
SQL>
ORA-00205:
errorinidentifyingcontrolfile,checkalertlogformoreinfo
restorecontrolfilefrom'
d:
\DB92_CTL_20031113_9_1.BAK'
Moutdatabase:
recoverdatabase;
alterdatabaseopenresetlogs;
注意:
对数据库设定控制文件保存备份信息为365天,具体语句如下。
altersystemsetcontrol_file_record_keep_time=365SCOPE=BOTH;
2)ArchiveLog
设置ArchiveLog的位置,确保存储介质有足够的空间来保留指定时间内archivelog的总量。
建设定期对RMAN进行全备份,删除冗余归档日志文件。
3)全备份策略
对于小容量数据库,可以采用全备份策略。
对于大容量数据库,必须制定全备份策略方案,备份时对archivelog进行转储,同时冷备份catalog数据库。
4)增量备份策略
对于大容量数据库,必须制定增量备份、累积备份和全备份的周期,备份时对archivelog进行转储,同时冷备份catalog数据库。
5)恢复原则
采用Rman脚本进行数据库恢复。
数据库恢复有以下几种:
局部恢复
主要用于恢复表空间、数据文件,一般不影响数据库其他操作。
完全恢复
数据库恢复到故障点,由catalog当前数据库决定。
不完全恢复
恢复到数据库的某一时间点或备份点。
恢复catalog数据库。
恢复数据库controlfile。
恢复到数据库某一时间点。
重设日志序列。
4概述
名称
代码
类型(未标注为业务数据)
柜员表
TELLER
业务数据
柜员状态表
TELLERSTATUS
柜员休假表
TELLERHOLIDAY
机构表
ORG
机构级别表
ORGLEVEL
现金尾箱表
CASHTRAILBOX
现金尾箱现金表
TRAHBOXCASH
现金尾箱转移表
CASHTRAILBOXMOVE
现金尾箱转移现金表
CASHTRAILBOXMOVECASH
长短款登记表
CASHSIGN
现金尾箱整理表
CASHTRAILBOXTIDY
凭证尾箱表
VOUCHERTRAILBOX
凭证尾箱凭证表
TRAILBOXVOUCHER
凭证尾箱历史表
VOUCHERHISTORY
凭证损益登记表
VOUCHERSIGN
额度类型表
LIMITTYPE
额度类型对应表
LIMITTYPEMAP
柜员额度表
TELLERLIMIT
机构额度表
ORGLIMIT
现金尾箱额度表
CASHTRAILBOXLIMIT
凭证尾箱额度表
VOUCHERTRAILBOXLIMIT
交易额度表
TXLIMIT
额度定制表
LIMITCUSTOM
角色表
ROLEBASE
角色权限表
ROLEAUTH
角色权限关联表
ROLECONNECTION
角色限额表
ROLELIMIT
菜单表
MENU
出厂参数
交易日志表
BTTXLOG
历史交易日志表
HISTORLOG
授权日志表
BtAuthLog
平台交易日志表
PlfTxLog
利率表
InterestRate
汇率表
ExchangeRate
汇率限额表
ExchangeRateLimit
费率表
FreeRate
交易表
TxBase
基本信息表
BaseInfo
货币表
Currency
券别币种表
ParValue
凭证表
Voucher
错误代码表
ErrorCode
序号表
SequenceNo
本外币表
CashDisposal
现金碰库表
CashEqual
路径描述表
ScrId
交易信息表
Txinfo
交易模型表
TxModual
在途现金表
OnwayCash
机构日期表
OrgDate
杂项参数表
OtherPara
参数信息表
ParameterInfo
索引表
TbIndex
打印单据类型表
prn_receipt_type
打印单据格式表
prn_receipt_format
打印单据数据表
prn_receipt_data
柜员允许经办的币种表
TellerCcy
机构允许经办的币种表
OrgCcy
柜员离岗原因表
Tel