数据库原理实验报告_第1页
数据库原理实验报告_第2页
数据库原理实验报告_第3页
数据库原理实验报告_第4页
数据库原理实验报告_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、重庆交通大学信息科学与工程学院设计性 实 验报告专业:计算机科学与技术班级:2015 级4 班学号:631507020418姓名:张再朝课程名称:数据库原理课程实验实验项目性质:设计性实验实验所属课程:数据库原理B实验室(中心):软件与通信实验室指导教师: 王家伟实验完成时间: 2017 年11月25日总成绩教师签名此页必须保留评分标准及成绩实验名称评分细则评分实验四报告表述的清晰程度和完整 性(20分)概念模型的合理性(实验一 内容)(10分)逻辑模型的合理性(实验一 内容)(10分)功能合理性(20分)功能完善性(10分)个人体会(10分)实验二10分实验三10分总成绩总体实验要求:1排版

2、要求标题用黑体四号,段前、段后距6磅(或0.3行);正文用小四号宋体,行距为1.5 倍行距。报告必须生成目录,目录必须带页码。2设计报告需要打印,装订,1份/人,理论课考试时交设计报告。3各班学习委员收集每位同学做的成果, 包含数据库的备份、程序源代码和运行配 置说明,并将每位同学的成果拷贝到软件与通信实验室的教师机上。实验四目录报告正文4一、实验目的 4二、实验题目 4三、实验涉及仪器设备和材料清单(或软件) 4四、实验原理 5五、实验内容 5六、实验步骤及代码分析 6七、实验结果及分析实验体会11实验二 表查询 13一 实验要求二 实验结果实验要求实验结果13141719实验三 对象的建立

3、与数据更新操作17报告正文一、实验目的1、掌握ODBC 的概念并学习使用ODBC 访问数据库;2、学习Visual C+下如何通过ODBC访问数据库;3、学习用Visual C+制作简单数据库应用程序的方法。二、实验题目某大学需要使用计算机管理学生信息、成绩信息等,要求如下:1、学生信息管理,包含学生的基本信息,如学号、姓名、性别、出生日期等;还要包含学生的简历、社会关系等;2、课程管理,包含整个学校开设的所有课程;3、教学计划管理,包含设定各系各专业在哪学期开设什么样的课程,学分是多少;4、学生选课管理,包含学生在某学期选择什么样的课程;5、学生成绩管理,包含学生各课程的成绩、是否补考、补考

4、成绩;6、学生奖惩管理,管理学生在校期间所获得的奖励和惩罚记录。根据实验一的结果,完成设计。可以根据自己的实际情况实现一部分也可。三、实验涉及仪器设备和材料清单(或软件)操作系统:Windows10软件: Visual Studio Professional 2017, Power Designer 15.1实现语言:C#开发平台:.NET Framework 4数据库:SQL Server 2014四、实验原理Microsoft推出的ODBC(Open Database Connectivity)技术为异质数据库的访问提供 了统一的接口。ODBC基于SQL(Structured Query

5、Language)并把它作为访问数据库的 标准。这个接口提供了最大限度的相互可操作性:一个应用程序可以通过一组通用的代 码访问不同的数据库管理系统。一个软件开发者开发的客户/服务器应用程序不会被束定于某个特定的数据库之上。ODBC 可以为不同的数据库提供相应的驱动程序。ODBC 的灵活性表现在以下几个方面: 应用程序不会受制于某种专用的 API SQL语句以源代码的方式直接嵌入在应用程序中 应用程序可以以自己的格式接收和发送数据 ODBC 的设计完全和 ISO Call-Level Interface 兼容 现在的ODBC数据库驱动程序支持55家公司的数据产品最新推出的ODBC 3.0 已经升

6、级到32位 ,支持 Win32。在C#中,提供了良好的数据库支持。输入数据源是遵循开放式数据库互接(ODBC)标准,还是微软的数据访问对象(DAO)标准,或OLE数据库(OLE DB)标准。ODBC功 能在数据库管理系统,如 Microsoft Access、Oracle或dBase的特定的驱动程序中实现。 C#提供了一个 ODBC驱动程序的集合;其他的可从经销商那里买到。实验中即利用 ODBC 接口来创建.NET 下的数据库支持。五、实验内容1、建立概念模型Z7E4«M:lfLKsL SC二 i二u* 厂匚17二4: J EirW :MJIC-4ffl 唐 一T纪:i*K*箍 I

7、'2'Lt L mi auh M*MiLLUxdbLEa.KULlTiPE * KE:2、利用Power Designer生成的SQL语句建立相关数据表3、利用C#进行相关软件开发六、实验步骤及代码分析查询部分:private void 查询课程 ToolStripMenuItem_Click( object sender, EventArgs e) string CommandString = "select * from Course"tryOdbcDataAdapter adapter =new OdbcDataAdapter(CommandStrin

8、g, odbcConnection);DataSet ds =new DataSet();adapter.Fill(ds);dataGridViewl.DataSource = ds.Tables0.DefaultView;odbcConnection.Close();catch (OdbcException ex)MessageBox.Show(ex.Message);录入成绩,利用数据源自动更新private void button2_Click(object sender, EventArgs e) OdbcCommandBuilder ocd =new OdbcCommandBuild

9、er(adapter); try adapter.Update(ds);catch (Exception ex)MessageBox.Show(ex.Message);this.Close();return;MessageBox.Show"成功");this.Close();更改成绩,利用数据源自动更新private void button1_Click(object sender, EventArgs e) /dataGridView1.DataSource = null;ds.Clear();dataGridView1.Update();string CommandSt

10、ring = "select * from Score where Score.CourseNo='"+ textBox1.Text + "' "tryadapter =new OdbcDataAdapter(CommandString, odbcConnection);adapter.Fill(ds);dataGridView1.DataSource = ds.Tables0.DefaultView;odbcConnection.Close();catch (OdbcException ex)MessageBox.Show(ex.Mes

11、sage);private void button2_Click(object sender, EventArgs e) OdbcCommandBuilder ocd =new OdbcCommandBuilder(adapter); try adapter.Update(ds);catch (Exception ex)MessageBox.Show(ex.Message);this.Close();return;MessageBox.Show"成功");this.Close();七、实验结果及分析登录界面:查询界面:增加界面:修改界面:删除界面:实验体会通过本次实验,我明

12、白了数据库中的各种操作是怎么回事,这些操作有增加,修改和删除,基于这些操作,完成了学生信息管理系统。在用C#完成系统的过程中,重新回顾了高级程序设计语言编程的基本语法和思想,由此让我产生了许多学习的心得:在上理论课的时候,要把笔记做好,课堂上的重点内容需要记录下来,尤其是关于技术方面的知识,这些知识的贯通需要通过应用来实现,在实验的实践过程中把理论知识用起来,达到活学活用的目的。在完成了本次实验之后,我对于 SQL代码的掌握更熟练了,而且对于 C#法的认 识更深刻,在做出体现面向对象的程序的能力上,有所进步。第二部分实验二、实验三目录实验二表查询 131 实验要求 132 实验结果 14实验三

13、对象的建立与数据更新操作171 实验要求 172 实验结果 19表查询一 实验要求根据给定的样例数据库pubs, 完成以下查询操作。1、无条件查询1)查找pub库中authors表的全部信息。2) 查找其他样例表中全部信息。2、简单条件查询1) 查找 titles 表中全部书号及书名。2)查找titles表中价格在$1518元之间的书的书名。3) 查找 titles 表中书名以T 开头的书号, 书名。4) 对其他样例表构造各种简单查询条件,进行查询。3、多条件查询1)查找书名起始字符为T,价格小于$16元的书名及价格。2)查找书名起始字符不为T的,价格大于$16元的书号,书名及价格。3) 对其

14、他样例表构造多个查询条件,进行查询。4、用连接操作(或嵌套查询)进行查询1) 使用样例表titles, publishers 进行查询: 查找出版社的名称以及所出的书名。2) 使用样例表authors, titleauthor, titles进行查询: 查找作者的姓、名和所写的书名。3) 对构造其他条件,在两个以上样例表中进行查询。5、得到排序的查询结果1)查找作者的姓、名、电话号码,并按作者姓、名排列。2)查找书名和书的价格,按书价由大到小的次序排列。3)对其他样例表构造查询条件、排序要求,给出查询结果。6、使用函数进行查找1)列出有多少类书。2)列出书的定价有多少种。3)列出书价最低的书名

15、和书价。4)查出书价最高的书名及书价。5)列出当年销量的总和。6)构造其他查询条件和统计要求,给出查询结果。二 实验结果select *from authors select *from discountsselect*from salesselect * from titles select *from employee select *from jobsselect * from pub_info select *from publishers select *from royschedfrom storesselect*from titleauthorselecttitle_id, ti

16、tlefrom titles select titlefrom titleswhere price >15 and price <18 select title_id , title from titles where title like 'T% select title_id , title , pub_idfrom titleswhere pub_id <1000select price , titlefrom titleswhere price <16 and title like 'T%select title_id , title from

17、titleswhere title not likeselect title_id , title from titleswhere title not like, price'T%' and price >16, price'T%' and price <= 16select pub_name , titlefrom titles , publisherswhere titles . pub_id =publishers . pub_idselect au_lname , au_fname , titleandfrom authors , titl

18、eauthor , titleswhere titles . title_id =titleauthor . title_id titleauthor . au_id =authors . au_idfrom titles , publisherswhere titles . pub_id =publishers . pub_idselect au_fname , au_lname , phonefrom authorsorder by au_fname , au_lnameselect title , price from titlesorder by price descselect ti

19、tle , price from titlesorder by price ascselectCOUNT( distinctfrom titlesselectCOUNT( distinctfrom titlesselect title , price from titleswhere price =( selectselect title , price from titleswhere price =( selecttype ) as 书的种类price ) as 定价种类min ( price ) from titles )max( price ) from titles )实验三对象的建

20、立与数据更新操作实验要求1创建和修改对象(1)创建表对象按照下面的的结构与内容建两个关系。表名分别以 S T开头,后面是建表人的学 号(以下简记为T*、S* )。先用create table命令建立表的初始结构,表 T*的初始 结构包括下面T*中前四个属性。然后再用alter table .add.添加一个属性:QTY(库存量)。并插入相应的内容。T*Titleauthort_nopriceQTY计算机原理张一平S309220.80200C语言程序设计李华H1298 15.30300数据库原理王家树D100722.70150计算机网络高明S5690 18.90230Artificialinte

21、lligenceP.WinstonD200820.50400Expert systemsR.UllmanH306717.00370软件工程鲁廷璋S200535.00200Fortran 程序设计顾学峰S500618.00180S*T_noPagepub-dateS30923041986D10072801993S50063151987S56903001993H12982101989D20083581994S20052981995H30673071995(2)用 alter table.alter column.改变属性 title的长度。(3)用子查询方式建新表。表名以 ST开头,后面为建表人学

22、号(简记为ST* )(新表内须包括title 和price两个属性。)(4)按t_no建索引,索引名为IT* (*表示建表人的学号,下同)。(5)用子查询方式建视图,视图名为 VT* ,并在视图上查找所需信息。(6)删除以VT*命名的视图。(7)删除以ST*命名的表。2、记录的插入、删除与更新(1)同前,用子查询方式建立表 ST* o该表的属性应有t_no, title, price(2)在 ST* 表中插入一元组:S7028, Digital Image Processing, 36.00(3)删除书名为“Fortran程序设计”的那个元组。(4)删除书号以H开头的元组。(5)把书价调整到原

23、来价格的95%。(6)把书号以D开头的那些书的书价减掉2.00元。(7)将“计算机原理”的书号改为 S113s(8)对所建的表,进行各种插入、删除、更新操作。(9)每次修改表后,可用select查看一下修改后表中的内容,看是否满足要求。3、统计(1)计算T*表中这些书籍的最高书价、最低书价及平均书价。(2)计算T*表中的书的种类是多少。(3)计算S*表中1990年后出版的书有多少。(4)计算总共有多少本书。(5)对样例表,设计统计要求,获得各种统计量。实验结果/* 1 */*(1)*/createdatabase studentuse studentcreatetable T631507020

24、418 (Titlevarchar(30 ),authorvarchar(15),t_nochar ( 6),pricenumeric(6, 2) )insert into T631507020418 ( Title , author , t_no , price )select ' 计算机原理' , ' 张一平 ' , 'S3092' , '20.8'union allselect 'C 语言程序设计' , ' 李华 ' , 'H1298' , '15.3'unio

25、n allselect ' 数据库原理' , ' 王家树 ' , 'D1007' , '22.7'union allselect ' 计算机网络' , ' 高明 ' , 'S5690' , '18.9', '20.5'union allselect 'Artificial intelligence', 'P.Winston' , 'D2008'union allselect 'Expert sys

26、tems' , 'R.Ullman' , 'H3067' , '17' union allselect ' 软件工程' , ' 鲁廷璋 ' , 'S2005' , '35'union allselect 'Fortran 程序设计' , ' 顾学峰 ' , 'S5006' , '18'alter table T631507020418add QTY intupdateT631507020418setQTY=200

27、wheret_no='S3092'updateT631507020418setQTY=300wheret_no='H1298'updateT631507020418setQTY=150wheret_no='D1007'updateT631507020418setQTY=230wheret_no='S5690'updateT631507020418setQTY=400wheret_no='D2008'updateT631507020418setQTY=370wheret_no='H3067'updat

28、eT631507020418setQTY=200wheret_no='S2005'updateT631507020418setQTY=180wheret_no='S5006'create table S631507020418 (T_nochar ( 6),pageint ,pub_date date )select'S3092', '304', '1986'unionallselect'D1007', '280', '1993'unionallselect'

29、S5006', '315', '1987'unionallselect'S5690', '300', '1993'unionallselect'H1298', '210', '1989'unionallselect'D2008', '358', '1994'unionallselect'S2005', '298', '1995'unionallselect'H3067', '307', '1995'S631507020418insertinto/*(2)*/alter table T631507020418alter column Title varchar ( 35)/*(3)*/select Title , price into ST631507020418from T631507020418/*(4)*/create index IT6315070200418on T631507020418 ( t_no )/*(5)*/create view VT631507020418 as

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论