● 5.1.1定义数据库别名
为了方便对数据库中文件进行管理,在创建数据库之前,一般先要建立一个存放数据库的文件夹。然后使用DBD和BDE,按照下列方法定义数据库别名。
建立数据库别名是在Delphi 7提供的数据库驱动器(BDE,Borland Database Engine)中进行的。
数据库驱动器(BDE,Borland Database Engine)又称集成化数据库应用程序编程接口(IDAPI),它是数据库工具中的核心部件,是运行数据库应用程序时所必须的支撑系统。BDE Administrator是设置和管理BDE的工具,可以用来管理BDE中的别名和驱动程序。
建立数据库别名具体操作步骤如下:
步骤1:打开Windows的资源管理器,在H盘(或其他盘符,但是设置别名路径时应作相应的修改)创建“毕业设计”文件夹,并在该文件夹下在创建一个“数据库”的子文件夹。用于存放本系统的8个数据表,名称分别为:“depot” ﹑“Goods” ﹑“sysuser” ﹑“SysUserRights” ﹑“YWYData” ﹑“stockrecord” ﹑“threcord” ﹑“JXCrecord”。
步骤2:单击Windows桌面的“开始”菜单,选择“程序”→“Borland Delphi 7” →“BDE Administrator”。(要进入BDE Administrator进行操作,必须先关闭全部正在使用的BDE应用程序,为的是保证再进入编程环境时所设置的参数生效。)
步骤3:右键单击Database页卡,在弹出菜单中选择new菜单项来增设一个数据库别名。在弹出的Database Driver Name选择窗口中选择STANDARD,单击OK按钮。输入“CPXSGL”作为数据库别名。把CPXSGL数据库的路径填入Definition页卡的PATH项,本例填入“H:\毕业设计\数据库\”。单击Configuration页卡,在Drivers选项中选择Native类驱动程序,在展开的树状结构中选择PARADOX驱动程序项。设置完毕后选择Object菜单,单击save as菜单项。重复步骤3,直到需要的数据库别名设计完毕。
● 5.1.2 定义数据表设计
DBD(Database Desktop)是Delphi中提供的简单实用的数据库桌面工具,它的功能是创建﹑维护以及查询数据库。
1. 表结构设计
依据表一给出的字段设计表的字段名称,字段类型,初始长度,初始值。创建数据库表结构具体操作步骤如下:
步骤1:单击Windows桌面的“开始”菜单,选择“程序”→“Borland Delphi 7”→“Database Desktop”。
步骤2:选择“File” →“New” →“Table”,在弹出的Create Table对话框中选择Table Type为Paradox7.在表结构设计窗体中填写字段名,类型,长度,默认值。
步骤3:设计好表结构后要对表结构进行保存。单击save as按钮,在弹出的保存对话框中选择Alias为“CPXSGL”(设计其他数据库时要做相应更改),填写表名后单击“保存”按钮。重复步骤2和步骤3直到设计完所有表结构。
2. 数据录入
表结构设计好后,就须对每个数据库中的表的内容进行录入。输入表字段内容具体操作步骤如下:
步骤1:单击Windows桌面的“开始”菜单,选择“程序”→“Borland Delphi 7”→“Database Desktop”。
步骤2:选择“File” →“Open” →“Table”,在弹出的Select Table对话框中选择 Alias为CPXSGL(对其他数据库表进行输入时该别名应作相应变化).
步骤3:使用“Table” →“Edit”菜单项,则即可进入编辑状态对数据直接进行修改。在编辑状态下按Insert键,可以插入一条新的记录行;按Delete下键,可以删除当前的记录。若再次选择“Table” →“Edit”菜单项,则 DBD将保存所进行的修改。重复步骤2和步骤3直到所有表内容输入完毕。
§5.2:DELPHI中数据文件路径的管理
Delphi中的Table控件(Component)和query控件都需要有一个DatabaseName属性。可以用DatabaseName属性来指定该控件所引用的数据表路径。有两种方法可以为属性DatabaseName设置路径:第一种方法是直接输入数据表所在路径,另一种方法是使用数据库别名(Alias)。在Delphi中数据库别名是在数据库引擎(BDE)中设定的,5.2的方法在设计时是可行的,然而需要对程序进行移植时却会导致程序运行出现异常。
数据库应用程序的移植是一个重要的问题。因为在数据库应用程序中要访问数据库或数据表,就要涉及到数据文件的路径。一般来说,数据库应用程序开发完成后要移植到其他的机器上使用,因此数据库应用程序运行时的数据文件路径很可能和开发时的不同。所以必须对数据文件的路径进行有效的管理,以便用于系统的移植。管理数据文件路径的方法有三种:①把数据文件建立在应用程序所在目录的子目录下②利用配置文件存放数据路径 ③利用数据库别名存放数据库路径。
本试题库系统采用的是第三种方法,且具有更强的移植性,每次启动时都会对别名进行检查并进行重设,以防异常情况的出现,但是损失了一定的运行时间。下面代码说明如何建立名字为“CPXSGL”的别名,它的数据库路径为“H:\毕业设计\数据库”,数据库类型为PARADOX。
Session.ConfigMode:=cmall;
Session.AddStandardAlias(’CPXSGL’,’ E:\毕业设计\数据库’,’PARADOX’);
Session.SaveConfigFile; //保存新建立的别名
如须对别名进行删除,则先要检查别名是否存在,如果对不存在的别名做删除操作则会引起异常。下面代码说明如何检查数据库别名“CPXSGL”是否存在,如果存在则进行删除。
定义变量:var strAlias:TStringList; //用于保存BDE数据库别名表
代码: strAlias:=TStringList.Create;//生成TstringList类的实例
Session.GetAliasNames(strAlias);//获取数据库别名
if (strAlias.IndexOf(’CPXSGL’) <> -1) then
begin
session.DeleteAlias('CPXSGL');
session.SaveConfigFile;
end;
六 试题库系统应用程序界面设计
本系统采用图形化界面并且提供帮助,界面友好,操作方便,可以大大降低了本软件的使用难度和维护难度,为软件的使用者带来方便。
系统在进行设计时,主要使用的是delphi中的一部分的控件,最长使用的是Label控件、Button控件、Radiogroup 控件,Memo控件。数据库方面常用Datasource控件、 ADOQuery控件、 ADOConnection控件、 DBNavingation控件、 ADOTable控件、 DBEdit控件、DBGrid控件。
§6.1 用户登录窗体
本窗体的任务是通过用户输入密码判断用户是否是合法的用户.它用于管理员按照用户名和密码进行登录。以免不相关得人进入系统进行不良的操作,而对系统进行破坏,导致整个系统进行瘫痪。