MSSQL网页编程之银行办理体系练习呈报
一个语句分成两个event(实际上不止,其他可以忽略),一个table_mapevent和一个Rows_log_event。Table_mapevent是一样的,主要看Rows_log_event。一FieldFieldnameTypeWidthdec
1银行称号字符型200(索引)
2地点字符型400
3德律风数值型80
4邮编数值型60
5注册日期日期工夫型80
6
4姓名字符型100
5身份证号字符型200
6开户日期日期工夫型80
7余额数值型102
8开户银行字符型200
9操纵员代号字符型80
3、操纵员信息表
FieldFieldnameTypeWidthdec
1姓名字符型100
2操纵员代号字符型80(索引)
3暗码字符型100
4、用户存失信息表
FieldFieldnameTypeWidthdec
1卡号字符型200(索引)
2余额数值型152
3择要字符型40
4借方数值型102
5贷方数值型102
6日期日期工夫型80
7操纵员代号字符型80
3、体系功效模块计划
以下是对全部银行体系的功效模块图
银行办理体系
一般操纵员
初级办理员
存存款
开户销户
用户修正暗码
卡号挂掉
当天数据备份
银行注册
查询汗青存失信息
扫瞄及打印数据库
操纵员革新
四:使用程序的计划
依据以上所创建的模块,完成其详细的功效,而且应当给用户供应一个选择的界面,在每一个界面内还应当有效户必要的操纵功效,这就是以下要举行的表单计划和增加代码。
(一)表单计划
在本体系中次要只计划了到三个表单,即:主表单,初级办理员表单,一般操纵员表单。其他的详细操纵都接纳的分页框计划,如许能使布局明晰,便于增加代码,如许制止了处置大批表单所带来的冗杂凌乱的情形。
1、主表单:(mainform.scx)
为用户供应四个控件,即:一般操纵员、初级办理员、匡助、加入,分离完成分歧的功效。这个历程及挪用表单的历程。比方:dofromadvancedfomr.scx
2、初级办理员表单:(advancedform.scx)
这个功效表单即是为初级办理员供应的一些操纵,如:银行注册,操纵职员革新等。这一系列的操纵都接纳了分页框办理,将各功效模块组合在一同。要完成模块内的详细功效,挪用改动此表单平分页框内的各详细功效属性便可。比方:在第二页(操纵员革新)中的修正功效的部分相干代码以下:
ifthisform.pageframe1.page2.修正.caption=修正
poss=.f.&&辨认是增加仍是修正,修正为.f.
thisform.pageframe1.page2.n.value=recno()
*将文本框变成可用形态,以便于修正
略
*改动按钮形态,制止误操纵
thisform.pageframe1.page2.修正.caption=保留
thisform.pageframe1.page2.增加.caption=复原
thisform.pageframe1.refresh&&表单革新
else&&实行保留操纵
tableupdate(.t.)&&表单修正确认
*将文本框变成不成用形态
略
*恢复按钮
thisform.pageframe1.page2.修正.caption=修正
thisform.pageframe1.page2.增加.caption=增加
thisform.pageframe1.page2.text2.setfocus()
*纪录指针从头定位
n=recno()
gon
docase
caserecno()=1
thisform.pageframe1.page2.上页.enabled=.f.
thisform.pageframe1.page2.下页.enabled=.t.
caserecno()=reccount()
thisform.pageframe1.page2.上页.enabled=.t.
thisform.pageframe1.page2.下页.enabled=.f.
otherwise
thisform.pageframe1.page2.上页.enabled=.t.
thisform.pageframe1.page2.下页.enabled=.t.
endcase
messagebox(纪录保留乐成,0,提醒信息)
endif
thisform.refresh
3、一般操纵员表单:(commonform.scx)
在这个表单中的操纵绝对来讲对照多,接纳分页框更是需要的了。编程头脑中还思索到针对分歧的一般操纵职员的操纵,以是在操纵职员进进详细的存、存款等操纵时,应当输出本人的操纵员代号和暗码,分歧的操纵员应当对应本人所作过的操纵。这便于初级办理员对银行职员和银行数据的办理。
(1)在存、存款操纵中的基础头脑为:先将卡号信息库中保留的余额提掏出来,举行响应的存(加)、取(减)操纵,再将了局交换回之前的余额,如许就到达存、取的完成。与此同时,还要对用户存失信息数据库举行追加一条新纪录,保留以后所作的存、取操纵。以下是存款操纵的部分中心代码为:
为了在某种程序上弥补这一缺陷,许多SQL命令都有一个DELAY_KEY_WRITE项。这个选项的作用是暂时制止MySQL在该命令每插入一条新记录和每修改一条现有之后立刻对索引进行刷新,对索引的刷新将等到全部记录插入/修改完毕之后再进行。 备份方面可能还是一个老大难的问题。不能单独备份几个表总是感觉不爽。灵活备份的问题不知道什么时候才能解决。 是要和操作系统进行Socket通讯的场景。否则建议慎重! 不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理? 备份方面可能还是一个老大难的问题。不能单独备份几个表总是感觉不爽。灵活备份的问题不知道什么时候才能解决。 财务软件要用SQL也只是后台的数据库而已,软件都是成品的,当然多学东西肯定是有好处的.. having子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having条件显示特定的组,也可以使用多个分组标准进行分组。 外键的级联更能扩展可能大部分的同行在设计OLTP系统的时候都不愿意建立外键,都是通过程序来控制父子数据的完整性。 分区表效率问题肯定是大家关心的问题。在我的试验中,如果按照分区字段进行的查询(过滤)效率会高于未分区表的相同语句。但是如果按照非分区字段进行查询,效率会低于未分区表的相同语句。
页:
[1]