《管理信息系统程序设计》实验指导书
? Freeform:自由方式,其典型风格是左边显示列标题,右边为对应的数据信息,具体如图1.26c
所示。
a 表格方式 b 列表方式
c 自由方式
图 1.26 数据操作的三种显示方式
这三种方式,用户可以通过数据库画笔工具栏上的三个图标(Grid)、(Tabular)、(Freeform)进行灵活选择。
插入记录
下面介绍向表中插入记录的方法。
在“院系信息表”中添加数据记录,操作过程如下:
(1) 选择表:在树状列表视图中选择院系信息表“College”。 (2) 单击画笔工具栏上的 图标:在“Results”视图中显示出表“College”的列标题,如图1.27a
所示。
a 初始状态 b 插入第一条记录
图 1.27 插入记录
(3) 单击画笔工具栏上的 图标:系统在列标题下插入一行空记录,如图1.27b所示,此时用
户可以输入该表的第一条记录。
(4) 输入记录:请按照表1.28所示的院系信息表数据记录,在“Results”视图中依次输入这些记
录。
表 1.28 院系信息表College的数据记录
院系编号 00 01 02 03 04 05 06 院系名称 电气信息学院 交通汽车学院 能源环境学院 机械工程学院 生物工程学院 建筑土木学院 计算数理学院 - 20 -
《管理信息系统程序设计》实验指导书 07 08 网络技术学院 测试数据 (5) 单击画笔工具栏上的图标:更新数据库(把刚才输入的数据保存到数据库中)。
提示: 关于操作中的说明。
? 输入数据时,可以通过单击 图标插入新记录,也可以在完成一条记录的输入后直接按下
〖Enter〗键。
? 如果输入的数据记录不符合表的定义,系统将给出提示信息。
? 如果单击画笔工具栏上的 图标,系统将从数据库重新读取该表的数据,而当前表中没有
更新的数据将丢失。 删除记录
下面通过介绍删除记录的具体方法。
在“院系信息表”中删除数据记录,操作步骤如下:
(1) 选择表:在树状列表视图中选择院系信息表“College”。
(2) 选择一种显示方式:这里选择表格方式,进入“Results”视图。 (3) 选中要删除的记录行:这里选中院系编号为“08”的测试记录。 (4) 单击画笔工具栏上的 图标:系统将删除当前选中的记录行。 (5) 单击画笔工具栏上的 图标:更新数据库。
注意: 对数据进行相关操作后,请记住单击画笔工具栏上的
将可能丢失。 浏览和修改记录
当表中存入数据后,用户就可以单击数据库画笔工具栏上的三个图标(Grid)、(Tabular)、(Freeform),进入“Results”视图,对表中数据进行浏览或者编辑。在“Results”视图中,用户可以通过单击画笔工具栏上的、、、 四个图标更换当前记录行,或者通过按“上”、“下”、“PageUp”、“PageDown”等键进行类似操作。如果需要修改记录,只需选中相关记录行和列,然后进行修改操作,结束时记住更新数据库。
为其它表输入数据记录
在设计和创建数据库的过程中,一般情况下,我们都需要事先准备一些初始数据并将他们输入数据库中,以便对数据库和所编写的应用程序进行相关测试。下面我们给出学生成绩信息库的一些初始数据,分别如表1.28、1.30、1.31、1.32所示,请读者依次输入相应的表中(其中表1.28的数据在前面已经输入)。
表 1.29 专业信息表specialty的数据记录
专业编号 001 002 003 004 011 012 013 014 专业名称 信息工程 电气工程与自动化 测控技术与仪器 应用电子技术 交通运输 交通工程 车辆工程 物流管理 图标更新数据库,否则你的操作
- 21 -
《管理信息系统程序设计》实验指导书 015 021 022 023 汽车发动机 建筑环境与设备工程 环境工程 水利水电工程 提示: 专业编号共3位,而其前两位为院系编号,即本数据库默认每个院系最多允许录入9个专
提示:业(一般情况下够用了),比如001~009。
表 1.30 课程信息表Course的数据记录 课程编号 课程名称 所属专业 0001 通信原理 001 0002 DSP技术 001 0003 数字信号处理 001 0004 自动控制理论 002 0005 电磁场 002 0006 控制电机 002 0007 微机原理 003 0008 虚拟仪器 003 0009 光电技术及其应用 003 0010 模拟电子技术 004 0011 数字电子技术 004 0012 电路分析 004 所属专业列保存的是相关专业的编号。该列不保存专业名称的原因是:保存专业编号比保
存专业名称更简洁,所需存储空间更少,如果需要显示专业名称时,我们可以通过外键关系从专业信息表中读取。另外这里课程的所属专业是指该门课程由那个专业教研室的教师来任课。
表 1.31 学生信息表Student的数据记录
学号 姓名 性别 政治面貌 备注 01001101 郑XX 1 团员 (空) 01001102 李XX 1 团员 (空) 01001103 晁XX 1 团员 (空) 01001104 姚XX 0 团员 (空) 01001201 周XX 1 党员 (空) 01001202 文XX 1 团员 (空) 01001203 何XX 0 团员 (空) 01001204 叶XX 0 党员 (空) 01002101 吴XX 1 团员 (空) 01002102 曾XX 0 团员 (空) 01002103 黄XX 1 团员 (空) 01002104 张XX 0 党员 (空) 01002201 陶XX 1 团员 (空) 01002202 陈XX 1 团员 (空) 01002203 王XX 0 团员 (空) - 22 -
《管理信息系统程序设计》实验指导书 01002204 江XX 1 团员 (空) 提示: 学号列和性别列说明。
? 学号采用8位字符表示,具体意义是: 位代表年级信息; 位代表专业信息; 位
代表班号信息; 位代表学生在班中的序号。例如学号01001101所含的信息是:01级001专业1班01号。
? 性别采用1位字符表示,即“1”表示男生,“2”表示女生。
? 备注列为空表示其中什么内容都不需要输入。注意,只有列的“Null”属性被设为“Yes”,
该列的值才能为空值,否则更新数据库时系统会报错。
表 1.32 成绩信息表Sreport的数据记录 学生学号 01001101 01001102 01001103 01001104 01001201 01001202 01001203 01001204 01002101 01002102 01002103 01002104 01002201 01002202 01002203 01002204 课程编号 0001 0001 0001 0001 0001 0001 0001 0001 0002 0002 0002 0002 0002 0002 0002 0002 成绩 75 85 93 88 73 64 80 56 83 86 77 91 50 89 64 72 备注 (空) (空) (空) (空) (空) (空) (空) (空) (空) (空) (空) (空) (空) (空) (空) (空) 提示: 该表中使用学生学号保存学生信息,使用课程编号保存课程信息,都是为了节约存储空间,
同时也有利于管理(比如,用户在专业信息表中修改了某一课程名称,但只要课程编号不
变,就不会影响该表中的课程信息,否则就需要把该表中所有对应课程进行更名处理)。如果在输出表中记录时(比如,生成学生成绩报表),需要相应的学生姓名和课程名称,则可以通过外键在学生信息表和课程信息表中分别读取。
注意: 上述各表中给出的数据,在本书后面的示例中都会用到,请读者勿必将都它们输入到各自
相应的表中。 使用视图浏览数据
下面介绍使用视图浏览相关数据的方法。
使用视图浏览学生成绩信息。在“视图操作”一节中我们已经创建了一个成绩视图“scoreviews”,这里我们使用它来浏览相关表中的记录信息,操作步骤如下:
(1) 选择视图:在树状列表视图中选择视图“mydb / views / scoreviews”。 (2) 选择数据浏览方式:这里选择“表格”方式,进入“Results”视图。 (3) 成绩视图显示的数据内容如图1.33所示。
- 23 -
《管理信息系统程序设计》实验指导书 图 1.33 使用成绩视图浏览相关数据
5)编写和执行SQL语句
如果你对SQL语句相当熟悉,那么可以直接在数据库维护画笔工作区的“ISQL Session”视图中键入SQL语句,键入时使用自由格式,一条SQL语句可以书写在多行中,不过要记住,在每条SQL语句的后面放上个分号。
在数据库画笔中编写和执行SQL语句的步骤为: (1) 选择画笔工作区下方的“ISQL Session”视图。
(2) 输入相关SQL语句:注意,在每条SQL语句的后面放上个分号(;)。
(3) 单击画笔工具栏上的 执行图标:系统依次执行“ISQL Session”视图中的SQL语句,在
微帮助栏系统指示SQL语句的执行是否成功。 通过测试的SQL语句可以直接复制到应用程序中使用。
SQL语句的子句众多,直接编写有一定难度。在PowerBuilder中如果需要编写SQL语句时,最好使用可视化的“SQL查询画笔”来生成SQL语句。下面介绍使用“SQL查询画笔”生成SQL语句的方法。
生成课程信息的查询语句,操作步骤如下:
(1) 在数据库画笔中选择“ISQL Session”视图。
(2) 单击画笔工具栏上的 图标:系统打开“SQL Statement Type”对话框,如图1.34所示,
用于选择SOL语句的类型。
图 1.34 SQL语句类型选择 图 1.35 选择相关的表
(3) 双击要插入的SQL语句图标:这里请双击“Select”图标,系统打开“Select Tables”对话
框,如图1.35所示,用于选择相关表。
(4) 选择表:在对话框中选择课程信息表“Course”和专业信息表“Specialty”(选择专业信息表
是为了获得专业名称),如图1.35所示。
(5) 单击“Open”按钮:进入可视化的SQL查询画笔,如图1.36所示。
(6) 选择输出列:在“Table Layout”视图所显示的表中通过单击相应列选择SQL语句要输出的
列,选中的列会以蓝底白字显示,而且其列名将显示在视图的最上面。这里依次选择“Course.courseid→Course.title→Specialty.title”(课程编号→课程名称→专业名称),相应的SQL语句显示在“Syntax”视图中,具体如图1.36所示。
(7) 调整输出列的顺序:可以通过用鼠标拖动视图最上面的输出列名的方式调整输出列的排序顺
- 24 -