1、02 数据库系统 实验报告3实 验 报 告( 2017/ 2018学年 第 二 学期)课程名称数据库系统实验名称小型MIS开发实验时间2018年6月1日指导单位计算机学院软件工程系指导教师程春玲学生姓名张颖班级学号B15041103学院(系)计软院专 业软件工程实 验 报 告实验名称小型MIS开发指导教师程春玲实验类型设计实验学时4实验时间2018-06-01一、 实验目的与要求 (1) 了解C/S结构的小型MIS的开发思路与过程(2) 理解ODBC与ADO的作用(3) 学习Delphi访问数据库的方法与表单Form的设计方法二、实验环境(实验设备)硬件:微型计算机软件:Windows 操作系
2、统、Delphi 6(或更高版本),MS SQL Server或ORACLE 10G三、实验原理及内容1.在MS SQL Server或ORACLE 10G中创建一个存储航班信息的数据库;(1)打开程序Microsoft SQL SERVER服务管理器,将服务器名选为 local,服务选为 SQLServer,然后刷新服务;(2)打开程序Microsoft SQL SERVER企业管理器,打开 Microsoft SQL SERVER SQL Server 组 (local)(Windows NT) 数据库,右键“数据库” 后就可以创建数据库B15041103,即在本地服务器上创建 一个数据库
3、B15041103。如下图所示:实 验 报 告2.在刚创建的数据库中,设计与创建实验所用到的数据库结构(三级模式结构);将该表导出为SQL语句后: if exists (select * from dbo、sysobjects where id = object_id(Ndbo、flight) and OBJECTPROPERTY(id, NIsUserTable) = 1)实 验 报 告drop table dbo、flightGOCREATE TABLE dbo、flight ( 航班号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL , 起点 v
4、archar (15) COLLATE Chinese_PRC_CI_AS NULL , 终点 varchar (15) COLLATE Chinese_PRC_CI_AS NULL , 日期 datetime NOT NULL , 起飞时刻 char (6) COLLATE Chinese_PRC_CI_AS NULL , 到达时刻 char (6) COLLATE Chinese_PRC_CI_AS NULL , 剩余座位数 int NULL , 票价 float NULL , 折扣票数 float NULL , 折扣率 float NULL , 航班所属航空公司 varchar (20)
5、 COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGO3.启动Delphi,创建一个自己的Project,进行界面设计(1)Form1系统界面:系统启动时的界面,给不同的用户提供不同的选择,可以以此进入票务管理与票务查询子功能。具体操作为:建新表单 Form1 拖放Button控件设置控件属性编写事件代码。(2)Form2登录界面:用户登录界面,输入用户名与密码,确认身份后,跳出操作界面,在此界面中,用户(管理员)可以进行航班数据维护与查询操作。具体操作为:建新表单 Form2 拖放控件Label设置控件属性编写事件代码。实 验 报 告(3)Form3查询
6、界面:按访问系统的用户的不同,对功能进行设置进行航班数据查询操作,但不能维护数据。具体操作为:建新表单 Form 拖放控件:ADOConnection 控件 ADOQuery 控件与DataSource控件设置控件属性(连接数据库)编写事件代码。4.通过ADO访问在MS SQL Server或ORACLE 10G中创建的航班信息数据库本次报告对实验中所使用的控件名称、作用及属性与空间属性取值进行了详细的表格说明,表格按照控件执行的先后顺序依次列出:控件名称控件作用控件属性控件取值ADOConnection 可对数据库下命令(设置 SQL 属性值)、存取同一数据库内不同表的内容。Connecti
7、on String点击该属性后的“”,在弹出的对话框中点击“Build”,选择希望连接的数据“Microsoft OLE DB Provider for SQL Server”,点击“下一步”后,其中服务器名称可以选为“local”(复制本机的 SQL SERVER 服务器名),数据库选为事先在 SQL SERVER 中设计好的数据库B15041103。点击“测试连接”,如果“测试连接成功”则点击“确定”后完成对 ADOConnection控件的配置,否则就要返回检查。ADOQuery数据库程序操作的对象就是数据库内单一的表。ConnectionADOConnection1SQLselect
8、* from flight;DataSource用于指明与数据控制组件链接的数据访问Data Access组件。DataSetADOQuery1DBNavigator主要用于在数据集中进行记录导航与为用户操纵数据集中的记录提供一组简明的控制按钮。DataSourceDataSource1DBGrid以网格的形式显示指定数据库表中的全部记录的所有字段信息。DataSourceDataSource1ADOQuery数据库程序操作的对象就是数据库内单一的表。ActiveTRUE以下就是文字说明:本次实验需要连接数据库:利用MS SQL Server2000 做后台数据库,通过 ADO 访问数据库,则
9、方法与步骤如下: a)打开 Delphi 后,将一些控件拖到 FORM 中。其中 ADOConnection 控件与 ADOQuery 控件在 ADO 数据集组件中,DataSource 在 Data Access 数据访问组件中,DBNavigator 与 DBGrid 在 Data Control 数据控制组件中;b)修改 ADOConnection 控件的 Connection String 属性,具体说明见表格;c)修改 ADOQuery 控件属性。将 Connection 属性值改为 ADOConnection1;将 SQL 属性值改为“select * from flight;”;
10、d)修改DataSource控件的DataSet属性。将该属性值改为:ADOQuery1;e)修改DBNavigator控件属性。将DataSource属性值设置为DataSource1;f)修改DBGrid控件属性。将DataSource属性值设置为DataSource1;g)最后将ADOQuery控件的Active属性值改为TRUE;最终显示成果如下图所示:要求登录数据库后输入密码如下图,只有在数据库成功连接时才能把Active属性值改为TRUE。在数据库中插入数据:5.写出实现各功能的响应事件、事件的核心代码,如插入、更新或删除事件等Form1:Procedure TForm1、Butt
11、on2Click(Sender: TObject);begin Unit3、Form3、DBNavigator1、VisibleButtons:=; Unit3、Form3、FormCreate(Sender); Unit3、Form3、Show;end;uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, DBCtrls;procedure TForm1、Button1Click(Sender: TObject);Begin Unit3、Form3、
12、DBNavigator1、VisibleButtons:=nbFirst,nbPrior,nbNext, nbLast,nbInsert,nbDelete,nbEdit,nbPost,nbCancel,nbRefresh; Unit2、Form2、Show;end; Form2:【确定】按钮代码如下: procedure TForm2、Button1Click(Sender: TObject); begin if (Edit1、Text=sxn)and (Edit2、Text=sxn) then begin Unit3、Form3、FormCreate(Sender); Unit3、Form3
13、、Show; end else showmessage(请输入正确的用户名或密码!); Edit1、Text:=; Edit2、Text:=; end;【取消】按钮代码如下:procedure TForm2、Button2Click(Sender: TObject); begin close; end; Form3:【查询】按钮代码如下: procedure TForm3、Button1Click(Sender: TObject); begin ADOQuery1、Close; ADOQuery1、SQL、Clear; ADOQuery1、SQL、Add(select *); ADOQuery
14、1、SQL、Add(from flight); ADOQuery1、SQL、Add(where 航班号=+Edit1、Text+ and 日期=+ComboBox1、Text+-+ ComboBox2、Text+-+ComboBox3、Text+); ADOQuery1、Prepared; ADOQuery1、Open; ADOQuery1、Active:=true; end;【退出】按钮代码如下: procedure TForm3、Button2Click(Sender: TObject); begin close; end;实 验 报 告四、实验小结(包括问题与解决方法、心得体会、意见与建
15、议等)(一)实验中遇到的主要问题及解决方法创建主系统编写界面时完成双击按钮的执行时,由于实践指导书不够清晰的原因,代码中的,总就是误写为、,导致程序无法正常运行,后来仔细观察后才知道错误所在。在创建本地数据库时,并没有在本地创建数据库,而就是在别的项目下创建了数据库,所以导致了后来数据无法连接,经过一系列排查问题,最终解决了这个问题。(二)实验心得这个实验的过程不就是很难,因为有实验指导书作为参考,但就是实际上做实验的时候还就是有很多自己没注意到的小毛病,比如说关键代码的,与、写错了,或者就是单词拼写错误导致了程序无法正常运行。如果认真做四个课时的实验肯定就是足够的。此外这个实验还拓宽了我的眼
16、界。之前我一直以为很多软件包括APP在内就是用C#或者JAVA实现的,数据库只就是很简单的起到了一个后台的作用,现在发现基本上很多重要的大型的系统离开数据库就如同鸡肋一般。这个课程还就是让我认识到了数据库在我们很多软件设计中的重要地位,学好数据库也就是很重要的一项内容。五、支撑毕业要求指标点 1、4-M掌握计算机科学与技术的专业知识,能将专业知识用于分析与解决计算机及应用领域的复杂工程问题。 3、2-M能够根据用户需求,选取适当的研究方法与技术手段,确定复杂工程问题的解决方案。 4、2-M能够根据实验方案,配置实验环境、开展实验,综合分析实验结果以获得合理有效的结论。 5、1-H 能够合理使用现代化信息工具。六、指导教师成绩评价表评 分 细 则评分项优秀良好中等合格不合格遵守实验室规章制度学习态度实验准备就是否充分配置实验环境实验开展情况实验完成度实验结果的分析专业知识掌握情况选取适当方法与技术能力分析与解决工程问题能力使用现代化信息工具报告书写认真程度内容详实程度文字表达熟练程度其它评价意见本次实验能力达成评价(总成绩)批阅人日 期
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1