1、实验四 数据库编程撰写者:康家银一、实验目的掌握数据表结构设计方法(数据库的建立) ,了解数据库引擎的概念,掌握基于 BDE 或 ODBC 的数据库连接,了解不同数据库格式的数据库应用程序的设计技术,灵活应用数据库组件。掌握数据库的查询和维护。二、实验内容设计学生信息管理数据库,进行数据库的连接、执行数据库的查询和更新等操作。三、实验要求根据给定的关系表建立相应的 Paradox 数据库(可以是 Microsoft Access 数据库) ,利用 BDE 或 ODBC 进行数据库的连接、在 SQL Explorer 中执行数据库的维护等操作。四、实验课时:2 课时五、实验步骤:1、建立学生信息
2、数据库:在 Borland Delphi 平台下建立 Paradox 数据库(或在 Microsoft Access 平台下建立 Access 数据库) ,要求所建关系表的结构和数据如下:学生表:StudentSno Sname Ssex Sage Sdept0010001 王浩 男 18 电子0010003 田晓惠 女 22 电子0060018 姜丽丽 女 19 法学0030009 孙晓娟 女 22 机械0020003 沈小军 男 19 计算机0020015 陈永超 男 23 计算机0050036 吴大维 男 22 化工0010021 梁琪瑶 女 20 电子0040007 唐腾飞 男 24
3、土木说明:Student 表中含有五个域(字段) ,其中 Sno 为学号,Sname 为姓名,Ssex 为性别,Sage 为年龄,Sdept 为所在的系。Sno 为主码(关键字) 。系表:DepartmentDno Dname Ddean Dlocation001 电子 龚院长 电子楼002 计算机 李院长 计算机楼003 机械 乔院长 机械类004 土木 田院长 土木楼005 化工 童院长 主楼006 法学 杨院长 文源楼说明:Department 表中含有四个域(字段) ,其中 Dno 为系的编号,Dname 为系名, Ddean 为系主任,Dlocation 为系的地点。Dno 为主码(
4、关键字)。课程表:CourseCno Cname Ccredit001 Delphi 3002 数据库 4003 VB 4004 C 语言 5005 数据结构 3说明:Course 表中含有三个域(字段) ,其中 Cno 为课程号,Cname 为课程名,Ccredit 为学分。Cno 为主码(关键字) 。选课表:xuanke(C-S)Sno Cno Grade0010001 004 920010003 004 760060018 003 880030009 004 650020003 004 770020015 004 900050036 004 890010021 004 810040007
5、 004 730010001 001 880010003 001 920020003 005 950020015 005 860010021 001 79说明:xuanke 表中含有三个域(字段) ,其中 Sno 为学号,Cno 为课程号,Grade 为成绩。此外,在该关系表中, Sno 和 Cno 是主码(关键字) 。2、进行数据库的连接(基于 BDE 的连接)点击“程序”“Borland Delphi7” BDE Administrator.进入 BDE Administrator 后,在“Database ”处,右键,然后“New” ,新建一个数据库连接,注意数据库驱动名就选择“Stan
6、dard” ,点击 OK。接下来,给新建立的数据库连接起个名字,如“学生信息数据库” (默认状态下是 Standard1 等) 。然后在右侧的数据库定义栏中对该数据库的属性进行定义或设置,将“Enable BCD”设成“True ”,将“ Path”的路径设置成自己存放已经建立好的数据库的地方(文件夹) 。然后点击菜单“Object” ,按“Apply”后,关闭 BDE Administrator,再重新进入后,数据库连接就完成了。3、执行数据库的查询和维护“程序”“Borland Delphi7” SQL Explorer。进入 SQL Explorer后,在左侧栏目 Database 处,
7、可见已经连接好的数据库“学生信息数据库” 。点击该数据库,便可进入 Tables 等,选中任意一个表,在右侧点击“Data” ,便可见该表中的数据信息。接下来,就要在 SQL Explorer 中实现数据的查询等操作。如果实现单表操作,则只需点击欲操作的表,在右侧的“Enter SQL”中根据要求输入 SQL 语句,从而完成操作。如果查询等操作涉及到多个表,则在左侧点击“Tables” ,意为将所有的表都选中,然后在右侧的“Enter SQL”中输入相应的 SQL 语句,从而完成查询等操作要求。本次实验中,要完成如下几方面的操作:(1) 、查询电子系年龄小于 20 岁的学生姓名和年龄。select *from Studentwhere Sage80;(4) 、将学号为“0010001”的学生的年龄改成 20 岁。(5) 、在 Course 表中增加一条记录:Cno 为 006, Cname 为操作系统, Ccredit=3。INSERT into course VALUES (006,操作系统,3);(6) 、统计 C 语言课程成绩大于 80 分的学生人数。select count(sname)from Student,course,xuankewhere student.sno=xuanke.sno and o=o and cname=c 语言and grate80;