ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:20.12KB ,
资源ID:10278001      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10278001.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据结构实验报告.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据结构实验报告.docx

1、数据结构实验报告合肥师范学院 实验报告册 2013 / 2014 学年 第2 学期系 别 计算机科学与技术系实验课程 数据库原理专 业 计算机软件班 级 软件一班姓 名 夏雷学 号 95指导教师 潘洁珠实验名称课时实验报告成绩实验(一)数据库基本操作2实验(二)SQL语句6实验(三)数据库完整性与安全性实验4实验(四)数据库编程4备注:实验一 数据库基本操作一、 实验目的1. 熟悉MS SQL SERVER运行界面,掌握服务器的基本操作。2. 掌握界面操作方法完成用户数据库建立、备份和还原。3. 建立两个实验用的数据库,使用企业管理器和查询分析器对数据库和表进行基本操作。二、 实验预习内容在认

2、真阅读教材及实验指导书的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。1. 熟悉SQL SERVER 2000 的运行环境,练习服务器基本操作:打开、停止、关闭。 2. 使用SQL SERVER 2000 中的企业管理器完成以下任务。数据库名称:STC表:STU(sno char(9), sname varchar(50), ssex char(2) , sage int, sdept char(2) ); COUTSES( cno char(3), cname varchar(50), cpno char(3), credit int ); SC(sno char(9), c

3、no char(3), grade int );说明:以上为表结构,以sno char(9)为例,说明sno属性设置为字符类型,宽度为9,int指整型数据。 1) 建立数据库STC,分别建立以上三张表,并完成数据录入。(表结构及数据参见教材)2) 分析并建立各表的主码,用下划线在上面表结构中标出主码。3) 建立各表之间的关联,请简述操作步骤。 以下是各表的数据及各表的主码:表:表; 3SC表: 建立各表的关联: 4) 参考实验指导书的【第5章 数据库的备份和还原】,使用企业管理器对数据库STC进行备份,并尝试在个人电脑与机房电脑上进行还原,请简述备份、还原操作的步骤。1. 备份:2.还原:3.

4、 在SQL SERVER 2000 的查询分析器中使用SQL语言完成以下任务。参考实验指导书数据库系统实验指导教程【实验 数据定义】,建立数据库SCHOOL,分别建立students、teachers、courses、choices四张表,表结构见实验指导书P236 【附录A】。1) 用SQL语言创建数据库、建表。建表时为各表建立关键字、设置外码,数据暂不录入,请写出对应的SQL命令。create database SCHOOL creat TABLE students(sid char(10) primary key,sname char(30) not null, email char(3

5、0),grade int, ); create TABLE teachers(tid char(10) primary key, tname char(30) not null, email char(30), salary int, );create TABLE courses(cid char(10) primary key,cname char(30) not null, hour int,);create TABLE choices( no int primary key, sid char(10) , tid char(10), cid char(10), score int,FOR

6、EIGN KEY (sid) REFERENCES students(sid),FOREIGN KEY (tid) REFERENCES teachers(tid),FOREIGN KEY (cid) REFERENCES courses(cid),);2) 为students表、courses建立按主键増序排列的索引,请写出相应的SQL命令。create index ssid on students(sid asc)create index ccid on courses(cid asc)3) 删除course上的索引,请写出相应的SQL命令。drop index 4) 在SCHOOL数据库

7、中的students表中增加一个“出生日期”字段,类型为日期时间型,请写出对应的SQL命令。alter TABLE students ADD 出生日期 DATETIME 5) 删除students中的“出生日期”字段,请写出对应的SQL命令。alter TABLE students DROP COLUMN 出生日期6) 删除SCHOOL数据库中的students表,请写出对应的SQL命令。Alter TABLE choisesdrop FK_CHOICES_STUDENTSDROP TABLE students4. 使用企业管理器创建数据库SCHOOL,实现内容与实验预习内容3完全相同。1)创

8、建数据库、建表。建表时为各表建立关键字、设置外码,数据暂不录入建立表,以及主码,外码2)为students表、courses建立按主键増序排列的索引:3)删除course上的索引:4) 在SCHOOL数据库中的students表中增加一个“出生日期”字段,类型为日期时间型:5) 删除students中的“出生日期”字段:6) 删除SCHOOL数据库中的students表5. 使用企业管理器,将SCHOOL数据库分离出MS SQL SERVER,请简述步骤。6. 使用企业管理器,使用【数据库/所有任务/附加数据库】将SCHOOL数据库添加进SQL SERVER,并查看数据。7. 使用查询分析器,

9、删除数据库STC,请写出对应的SQL命令。drop database STC8. 结束本次实验三、 实验课后训练1. 使用企业管理器练习数据的导入导出。1) 将SCHOOL数据库students表中的数据导出到STC数据库对应的stu表中;2) 向STC数据库courses表导入SCHOOL数据库courses表中的数据;3) 自行练习实验指导书【实验 SQL SERVER数据库的导入与导出】部分;1:从school数据库中的students表中的数据导出到文本文件Learner中:2:将文本文件Learner中的数据导入到school数据库中的students表中2. 自行练习实验指导书【实

10、验数据定义】部分。四、 实验报告1. 简述本次实验所用到的SQL命令及其功能。 create database 创建数据库 creat TABLE ( 列级完整性约束条件 , 列级完整性约束条件 , ) 创建基本表create index on (主属性 asc (desc)) 为表建立按主键増序(降序)排列的索引Alter TABLE drop (B与A 的外码约束)DROP TABLE 删除数据库中的A表2. 在MS SQL SERVER中数据库的“分离|添加”与“备份|还原”是相同的功能吗?是不同的功能,“分离/添加”会使数据库的数量改变,而“备份|还原”不会改变。3. 实验总结(实验过

11、程中出现的问题、解决方法、结果如何或其它)通过本次试验,知道了基本的sql命令及其功能,同时也初步涉及到了SQL语言。在实验过程中也遇到了一些问题,比如在一开始没有打开服务器直接进入企业管理器,半天链接不上。创建表后,录入数据后找不到如何保存数据,原来系统会自己存储,录入数据后直接关闭就可以了。导入数据时,最后总是不记得选择要导入的表,直接就导入了。 实验二SQL语句一、 实验目的1. 熟悉SQL的数据查询语言,能使用SQL进行单表查询、连接查询、嵌套查询、集合查询和统计查询,能理解空值的处理;2. 熟悉数据库的数据更新操作,能使用SQL语句对数据库进行数据的插入、更新、删除操作;3. 熟悉S

12、QL支持的有关视图的操作,能创建、查询及取消视图;4. 了解NULL在数据库中的特殊含义,掌握使用SQL进行与空值相关的操作;二、 实验预习内容在认真阅读教材及实验指导书【实验 数据查询】、【实验 数据更新】、【实验 视图】和【实验 空值和空集的处理】的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。1. 使用SCHOOL数据库,在SQL SERVER 2000 的查询分析器中使用SQL语言完成以下操作。请在空白处填写相应的SQL命令。1) 查询年级为2001的所有学生的名称,按编号顺序排列;SELECT snamefrom STUDENTSWHERE grade=2001ORD

13、ER BY sid DESC2) 查询所有课程名称中含有data的课程编号;SELECT CIDFROM COURSESWHERE CNAME LIKE %data%3) 统计所有老师的平均工资SELECT AVG(SALARY)FROM TEACHERS4) 查询至少选了3门课的学生编号;SELECT sidFROM CHOICESGROUP BY sidHAVING COUNT(sid)25) 查询学号为的学生的姓名、所选课名及成绩;SELECT ,FROM STUDENTS,COURSES,CHOICESWHERE =6 AND = AND =6) 查询没有学生选的课程编号;SELECT

14、 cidFROM COURSESWHERE CID NOT IN(SELECT CID FROM CHOICES)7) 查询既选了C+又选了Java课程的学生编号;SELECT FROM CHOICES AS X,CHOICES AS YWHERE=(SELECT cid from courses where cname=C+)AND =(SELECT cid from courses where cname=JAVA) AND =8) 查询选了C+但没选Java课程的学生编号;SELECT FROM CHOICES AS X,CHOICES AS YWHERE=(SELECT cid fro

15、m courses where cname=C+)AND IN (SELECT cid from courses where cnameJAVA) AND =9) 向STUDENTS表中插入“LiMing”的个人信息(编号:8,名字:LiMing,Email,年级:1992);INSERTINTO STUDENTS(sid,sname,email,grade)VALUES (8,liMing,1992);10) 将“LiMing”的年级改为2002;UPDATE studentsSET grade=2002WHERE sname=LiMing;11) 删除所有选了Java课程的学生选课记录;D

16、ELETEFROM choiceswhere cid=(select cid from courses where cname=Java);12) 求出每门课的课程号、选课人数,结果存入数据库表T1中。create table T1(cid char(10),m int)insertinto T1(cid,m)select ,count(sid)from courses left join choices on = group by select distinct *from T1order by cid asc13) 查询所有选课记录的成绩并换算为五分制(注意NULL的情况);select

17、sid,tid,cid,score/20 scorefrom choices14) 查询成绩小于0的选课记录,统计总数、平均分、最大值和最小值(注意查询结果中NULL的情况); select count(*),avg,max,minfrom (select* from choices where score60)a15) 按成绩顺序排序显示CHOICES表中所有记录。(使用ORDER BY排序,注意NULL的情况);select *from choicesorder by score 16) 创建视图V1,显示学生姓名、所选课名称、任课教师名;create VIEW V1(sname,cnam

18、e,tname)ASSELECT sname,tname,cnamefrom students,teachers,courses,choiceswhere = and = and =17) 取消V1视图;DROP VIEW V1使用STC数据库,在SQL SERVER 2000 的查询分析器中使用SQL语言完成以下操作。请在空白处填写相应的SQL命令或其它内容。1) 创建视图V2,显示计算机(CS)系学生信息;(结合下面的b)小题,V2视图创建2次,分别使用/不使用WITH CHECK OPTION选项)(1)不加WITH CHECK OPTION(2)加WITH CHECK OPTIONCR

19、EATE VIEW V2ASSELECT*FROM STUDENTS;WHERE sdept=CS;CREATE VIEW V2ASSELECT*FROM STUDENTSWHERE sdept=CS;WITH CHECK OPTION;2) 插入元组(99999,张三,20岁,男,PH)到V2中,运行结果如何?(观察WITH CHECK OPTION对结果的影响);(1)不加WITH CHECK OPTION的结果(2)加WITH CHECK OPTION的结果INSERTINTO V2VALUES (99999,张三,男,20,PH);命令已成功完成。(所影响的行数为 1 行)INSERT

20、INTO V2VALUES (99999,张三,男,20,PH);试图进行的插入或更新已失败,原因是目标视图或者目标视图所跨越的某一视图指定了 WITH CHECK OPTION,而该操作的一个或多个结果行又不符合 CHECK OPTION 约束的条件。语句已终止。3) 在V2基础上,查询所有计算机系女生信息;SELECT *FROM V2WHERE SSEX=女2. 结束本次实验三、 实验课后训练1. 掌握SQL SERVER中流控制语句及其它常用编程语句;1) 使用查询分析器,编写代码,输出乘法口诀表。2. 自行练习实验指导书P24【实验 数据查询】1.2.5自我实践部分; (1)查询全部

21、课程的详细记录;select *from courses(2)查询所有有选修课的学生的编号;select sidfrom choices(3)查询课时88(小时)的课程的编号;select cid from courseswhere hour4003. 自行练习实验指导书P30【实验 数据更新】1.3.5自我实践部分;4. 自行练习实验指导书P36【实验 视图】1.4.5自我实践部分;5. 自行练习实验指导书P49【实验 空值和空集的处理】1.6.5自我实践部分;四、 实验报告1. SQL SERVER中变量声明的命令是什么?输出命令是什么?变量声明:declare 变量名 变量类型输出:SE

22、T SERVEROUTPUT ON2.SQL SERVER中实现分支和循环的语句分别是什么?循环:while (条件-只能是表达式)语句或语句块break-强制退出分支:casewhen 条件1 then 结果1when 条件2 then 结果2else 其他结果end3.在SQL SERVER里使用ORDER BY排序时,NULL值如何处理?使用GROUP BY分组时,NULL值又如何处理的?4.当使用order by 排序时,SQL中是将NULL默认为无穷小的,当使用group by 分组时,SQL中是将NULL作为与该字段内其他数据类型相似仍旧为NULL数据进行分类统计的2. 实验总结(实验过程中出现的问题、解决方法、结果如何或其它)本次试验中遇到了很多问题,在求出每门课的课程号、选课人数,结果存入数据库表T1这题中,没有使用做连接,这样,由于前一题删除了选了JAVA学生的记录,导致查的结果中缺少了记录。在涉及NULL的题目中,均加上了NULL的条件,后来才知道不用加,null不参与计数。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1