

下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGE6/NUMPAGES6数据库实验报告一2数据库理论与技术实验报告
2012-2013第二学期
实验二:SQL的数据定义和更新
指导教师:虞勤国
实验时间:2013年4月1日实验地点:计算中心二楼班级:
组长:
组员:
成绩:
实验二:SQL的数据定义和更新
实验目的
熟练掌握建立数据库和表,向数据库输入数据、修改数据和删除数据的操作。
实验内容
建立数据库并设计各表,输入多条实际数据,并实现数据的增、删、改操作。
实验步骤:
创建用于学生管理数据库,数据库名为XSGL,包含学生的基本信息,课程信息和选课信息。数据库XSGL包含下列3个表:
(l)student:学生基本信息。
(2)course:课程信息表。
(3)sc:学生选课表。
各表的结构分别如表1、表2和表3所示。
表2课程信息表:course
表3学生选课表:sc
一.数据库的建立:
1.用可视化界面建立:
(a)在SQLSERVER中用企业管理器-新建数据库;
2.命令方式建立:
(a)在SQLSERVER中,在查询分析器中使用T-SQL语句:
CREATEDATABASEXSGL
ON(NAME='XSGL_DATA',
FILENAME='c:\XSGL.MDF',
SIZE=10MB,
MAXSIZE=50MB,
FILEGROWTH=5%)
LOGON
(NAME='XSGL_Log',
FILENAME='c:\XSGL_Log.ldf',
SIZE=2MB,
MAXSIZE=5MB,
FILEGROWTH=1MB)
二.表的建立:
1.用可视化界面建立:
在SQLSERVER中用企业管理器—数据库—XSCJ—表—右键—新建表;
实验结果,如下所示:
2.命令方式建立:
在SQLSERVER中查询分析器的编辑窗口中用下列SQL语句:
useXSGL
Createtablestudent(snoCHAR(5),snameCHAR(10),ssexCHAR(2),sageint,sdeptCHAR(4))go
Createtablecourse(cnoCHAR(2),cnameCHAR(30),creditINT,pcnoCHAR(2)NULL)
go
Createtablesc(snoCHAR(5),cnoCHAR(2),gradeINTNULL)
Go
三.表数据的添加:
1.用可视化方法:
I:在SQLSERVER中用企业管理器—数据库—XSCJ—表-表名—右键-打开表-返回所有行;
输入下列数据:
snosnamessexsagesdept
95001李勇男20CS
95002刘晨女19IS
95003王敏女18MA
95004张立男19IS
95005刘云女18CS
cnocnamecreditpcno
1数据库45
2数学6
3信息系统31
4操作系统46
snocnograde950011929500128595001
38895002290
95002380950032859500415895004
2
85
要求:(1)给出输入数据后的数据库表的窗口截图
实验结果,如下所示:
1)建立学生信息表:student的结果:
2)建立课程信息表:course的结果:
3)建立学生选课表:sc的结果:
5数据结构476数据处理37
PASCAL语言
4
6
(2)因为下面要用命令行方式插入同样数据,请在清空SQLSERVER查询分析器的编辑窗口中使用deletefrom命令先清空以上三表。
实验结果,以清空学生信息表:student为例,如下所示:
清空学生信息表:student的结果:
2.在SQLSERVER查询分析器的编辑窗口中使用下列SQL语句插入数据:
insertintostudent(sno,sname,ssex,sage,sdept)values('95001','李勇','男',20,'CS')
insertintostudent(sno,sname,ssex,sage,sdept)values('95002','刘晨','女',19,'IS')
insertintostudent(sno,sname,ssex,sage,sdept)values('95003','王敏','女',18,'MA')insertintostudent(sno,sname,ssex,sage,sdept)values('95004','张立','男',19,'IS')
insertintostudent(sno,sname,ssex,sage,sdept)values('95005','刘云','女',18,'CS')
go
insertintocourse(cno,cname,credit,pcno)values('1','数据库',4,'5')
insertintocourse(cno,cname,credit,pcno)values('2','数学',6,null)
insertintocourse(cno,cname,credit,pcno)values('3','信息系统',3,'1')
insertintocourse(cno,cname,credit,pcno)values('4','操作系统',4,'6')
insertintocourse(cno,cname,credit,pcno)values('5','数据结构',4,'7')
insertintocourse(cno,cname,credit,pcno)values('6','数据处理',3,null)
insertintocourse(cno,cname,credit,pcno)values('7','PASCAL语言',4,'6')
go
insertintosc(sno,cno,grade)values('95001','1',92)
insertintosc(sno,cno,grade)values('95001','2',85)
insertintosc(sno,cno,grade)values('95001','3',88)
insertintosc(sno,cno,grade)values('95002','2',90)
insertintosc(sno,cno,grade)values('95002','3',80)
insertintosc(sno,cno,grade)values('95003','2',85)
insertintosc(sno,cno,grade)values('95004','1',58)
insertintosc(sno,cno,grade)values('95004','2',85)
Go
要求:给出上述命令执行结果
实验结果,如下所示:
1)建立学生信息表:student的结果:
2)建立课程信息表:course的结果:
3)建立学生选课表:sc的结果:
四.表数据的修改:
1.用可视化方法:
在SQLSERVER中用企业管理器—数据库—XSCJ—表-表名—右键-打开表-返回所有行;在表格中将相应的数据修改即可。
实验结果,如下所示:
将学号为95001学生的年龄增加一岁,结果如下:
2.命令方法:
将所有学生的年龄增加一岁:updatestudentsetsage=sage+1
将4号课程的学分改为4:updatecoursesetcredit=4wherecno=4
设置7号课程没有先行课:updatecoursesetpcno=nullwherecno=7
将95001号学生的1号课程的成绩增加3分:updatescsetgrade=grade+3wheresno=’95001’andcno=’1’
要求:显示修改结果
实验结果,如下所示:
1)将所有学生的年龄增加一岁:updatestudentsetsage=sage+1的结果:
2)将4号课程的学分改为4:updatecoursesetcredit=4wherecno=4的结果:
3)设置7号课程没有先行课:updatecoursesetpcno=nullwherecno=7的结果:
4)将95001号学生的1号课程的成绩增加3分:updatescsetgrade=grade+3wheresno=’95001’andcno=’1’的结果:
五.表数据的删除:
1.用可视化方法:
在SQLSERVER中用企业管理器—数据库—XSCJ—表-表名—右键-打开表-返回所有行;
单击左边的行标记,选定某一行,或单击后拖动选择相邻的多行,再右击鼠标选择弹出式菜单中的删除。
实验结果,如下所示:
在course表中,将课号为1、2所在行删除,结果如下:
2.命令方法:
1)请自己设计几条针对所见三表的select查询命令,显示结果。设计了多表查询的同学可以给我看,根据设计情况决定是否加分。
a.选出student中的sname、ssex,并且将sname改为姓名、ssex改为性别
selectsnameAs姓名,ssexAs性别
fromstudent
wheresdept='CS'
b.选出成绩大于等于90的课程名称
selectcname
fromsc,course
wherehttp://./doc/de8d31e6ac51f01dc281e53a580216fc710a537b.htmlo=http://./doc/de8d31e6ac51f01dc281e53a580216fc710a537b.htmloAndgrade>=90
c.选出成绩及格而且课程名为数学的学生学号、学生姓名、成绩,并且按照分数从高到底的顺序排列出来
selectstudent.sno,sname,cname,grade
fromsc,course,student
wherehttp://./doc/de8d31e6ac51f01dc281e53a580216fc710a537b.htmlo=http://./doc/de8d31e6ac51f01dc281e53a580216fc710a537b.htmloAndsc.sno=student.sno
Andgrade>=60Andcname='数学'
orderbygradedesc
2)删除学号为95005的学生的记录:deletefromstudentwheresno=’95005’
3)删除所有的课程记录:deletefromcourse
4)删除成绩为不及格(少于60分)的学生的选课记录:deletefromscwheregrade<60
说明:虽然是分组实验,以组为单位交一份报告。但实验中间我要抽查,请诸位人人行动,放手一做。
实验结果,如下所示:
1)几条针对所见三表的select查询命令,显示的结果
a.选出student中的sname、ssex,并且将sname改为姓名、ssex改为性别
b.选出成绩大于等于90的课程名称
c.选出成绩及格而且课程名为数学的学生学号、学生姓名、成绩,并且按照分数从高到底的顺序排列出来
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 10 《小石潭记》课件【知识提要】八年级语文下册同步备课 课件与教学设计(统编版)
- 新能源汽车故障诊断测试题(附参考答案)
- 福建省师范大学附中2025届高三第三次模拟考试英语试卷含解析
- 职业技术学校休闲体育服务与管理专业人才培养方案
- 职业技术学院2024级铁道机车运用与维护专业人才培养方案
- 船舶操纵性能评估与优化考核试卷
- 自动扶梯能效测试方法的研究与标准化考核试卷
- 家用燃气灶具设计与制造考核试卷
- 油气田开发项目后评价、审计与持续改进方法考核试卷
- 肥料施用与农业现代化考核试卷
- 《铁路基本安全知识》课程标准
- 三年级下册口算练习1000道附答案
- 2024年英语专业四级考试真题及详细答案
- 小升初英语语法专项练习题 代词
- 内控学校合同管理制度
- icu病房与icu病房建设标准
- MSA测量系统分析英文版培训教材
- 初中道德与法治实践性作业创新设计
- 永善县污水处理厂污泥无害化处理工程环评报告
- 电影解说稿50篇(五)
- 2023年工会财务知识竞赛题库及答案(完整版)
评论
0/150
提交评论