下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《电气工程师》2024年韶关市翁源县全真模拟试卷含解析
- 2024年片式半导体器件项目发展计划
- 2024年运载火箭外安系统地面检测设备项目合作计划书
- 2024年高纯金属及氧化物项目合作计划书
- 2024年数字视频切换台合作协议书
- 2024年自配合组合电器项目建议书
- 2024年大型工程基础稳定性勘探及检测设备项目发展计划
- 2024年肉制品加工设备合作协议书
- 基于移动网络的嵌入式污水处理测控模块设计
- 2024年数控精密车削中心项目建议书
- 两票培训演示
- T∕CAMDI 041-2020 增材制造(3D打印)定制式骨科手术导板
- 广东省佛山市南海区人民法院
- 哈利波特与密室英文电影对白(全)
- 急救车药品、物品放置分布图
- 黄山风景区简介
- 铜排2466加工流程图
- GB 14752-2010 食品安全国家标准 食品添加剂 维生素B2(核黄素)
- 基于SWOT分析的江铃汽车股份有限公司经营战略分析
- 【中考化学复习】初三化学总复习知识点归纳
- 2018年山西中考理综真题及答案
评论
0/150
提交评论