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

下载本文档

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

文档简介

1、华 中 科 技 大 学数据库技术与应用实验报告专业班级: 学生姓名: 学号:实验地点: 指导教师:实验日期时间:一、实验项目名称:SQL Server 数据表的管理二、实验学时: 三、实验目的:1. 学会使用SQL Server管理平台和Transact-SQL语句CREATE TABLE和ALTER TABLE创建和修改表。2. 学会在SQL Server管理平台中对表进行插入、修改和删除数据操作。3. 学会使用Transact-SQL语句对表进行插入、修改和删除数据操作。4. 了解SQL Server的常用数据类型。四、实验工具或环境说明:1.本次实验完成实验一、二、三,三个实验文档最后一

2、起打包成压缩文件上传到作业系统上。2.实验一只需完成红色部分,截图显示完成效果 3.实验二、三中的Transact-SQL语句需要大家提前预习写出来,实验开始前5分钟由小组长逐个检查打出预习报告的给分。 4.实验思考题请每道题都做并给出答案5.每个实验做完后,请完成每个实验报告最后的心得和改进建议。五、实验内容、步骤、代码和结果:1. 启动SQL Server管理平台,在对象资源管理器中展开studentsdb数据库文件夹。2. 在studentsdb数据库中包含有数据表student_info、curriculum、grade,这些表的数据结构如图3-1、图3-2和图3-3所示。图3-1 学

3、生基本情况表student_info图3-2 课程信息表curriculum图3-3 学生成绩表grade3. 在SQL Server管理平台中创建student_info表和curriculum表。gocreate table curriculum(学分 int null,课程名称 varchar(50) null,课程编号 char(4) null );use studentsdbgocreate table student_info(学号 char(4) null,姓名 char(8) null,性别 char(2) null,出生年月 datetime null,家庭住址 varcha

4、r(50) null,备注 text null) 4. 使用Transact-SQL语句CREATE TABLE在studentsdb数据库中创建grade表。use studentsdbgocreate table grade(学号 char(4) null,课程编号 char(4) null,分数 decimal(5) null) 5. 在SQL Server管理平台中,将student_info表的学号列设置为主键,非空。alter table student_info alter column 学号 char(4) not null;alter table student_info a

5、dd primary key(学号)6. 在SQL Server管理平台中,将curriculum表的课程编号列设置为主键,非空。alter table curriculum alter column 课程编号 char(4) not null;alter table curriculum add primary key(课程编号)101在07. SQL Server管理平台中,将grade表的学号列和课程编号列的组合设置为主键,非空。10alter table grade alter column 课程编号 char(4) not null; alter table grade alter

6、column 学号 char(4) not null;alter table grade add primary key(学号,课程编号)8. student_info、curriculum、grade表中的数据如图3-4、图3-5和图3-6所示。图3-4 student_info的数据图3-5 curriculum的数据图3-6 grade的数据9. 在SQL Server管理平台中为student_info、curriculum、grade表添加数据。goinsert student_info(学号,姓名,性别,出生年月,家庭住址)values(0001,刘卫东,男,1980 10 1,衡

7、山市东风路号);insert student_info(学号,姓名,性别,出生年月,家庭住址)values(0002,张为民,男,1980 12 2, 东阳市八一北路号);insert student_info(学号,姓名,性别,出生年月,家庭住址)values(0003,马东,男,1980 7 4,长岭市五一路号);insert student_info(学号,姓名,性别,出生年月,家庭住址)values(0004,钱达理,男,1980 5 10,滨海市洞庭大道号);insert student_info(学号,姓名,性别,出生年月,家庭住址)values(0005,东方牧,男,1980 7

8、 13,东方市中山路号);insert student_info(学号,姓名,性别,出生年月,家庭住址)values(0006,郭文斌,男,1980 6 4,长岛市解放路号);insert student_info(学号,姓名,性别,出生年月,家庭住址)values(0007,肖海燕,女,1980 3 15,山南市红旗路号);insert student_info(学号,姓名,性别,出生年月,家庭住址)values(0008,张明华,女,1980 4 18,滨海市韶山路号)goinsert studentsdb.dbo.curriculum(课程编号,课程名称,学分)values(0001,大

9、学计算机基础,2);insert studentsdb.dbo.curriculum(课程编号,课程名称,学分)values(0002,c语言程序设计,2);insert studentsdb.dbo.curriculum(课程编号,课程名称,学分)values(0003,SQL Server数据库及应用,2);insert studentsdb.dbo.curriculum(课程编号,课程名称,学分)values(0004,英语,4);insert studentsdb.dbo.curriculum(课程编号,课程名称,学分)values(0005,高等数学,4)goinsert stude

10、ntsdb.dbo. grade(学号,课程编号,分数)values(0001,0001,80);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0001,0002,90);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0001,0003,87);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0001,0004,86);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0001,0005,78);insert

11、studentsdb.dbo. grade(学号,课程编号,分数)values(0002,0001,76);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0002,0002,73);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0002,0003,67);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0002,0004,70);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0002,0005,89);in

12、sert studentsdb.dbo. grade(学号,课程编号,分数)values(0003,0001,83);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0003,0002,73);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0003,0003,84);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0003,0004,75);insert studentsdb.dbo. grade(学号,课程编号,分数)values(0003,0005,6

13、5);10. 使用Transact_SQL语句INSERT INTO.VALUES向studentsdb数据库的grade表插入以下数据:学号课程编号分数0004000180goinsert studentsdb.dbo. grade(学号,课程编号,分数)values(0004,0001,80);11. 使用Transact_SQL语句ALTER TABLE修改curriculum表的“课程编号”列,使之为非空。alter table curriculum alter column 课程编号 char(4) not null;12. 使用Transact_SQL语句ALTER TABLE修改

14、grade表的“分数”列,使其数据类型为real。alter table studentsdb.dbo. grade alter column 分数 real null13. 分别使用SQL Server管理平台和Transact_SQL语句DELETE删除studentsdb数据库的grade表中学号为0004的成绩记录。Delete from studentsdb.dbo. grade where 学号=0004 14. 使用Transact_SQL语句UPDATE修改studentsdb数据库的grade表中学号为0003、课程编号为0005、分数为90的成绩记录。Update stud

15、entsdb.dbo. gradeSet 分数=90 Where 学号=0003and 课程编号=000515. 使用Transact_SQL语句ALTER.ADD为studentsdb数据库的grade表添加一个名为“备注”的数据列,其数据类型为VARCHAR(20)。Alter table studentsdb.dbo.grade add 备注 varchar(20)16. 分别使用SQL Server管理平台和Transact_SQL语句DROP TABLE删除studentsdb数据库中的grade表。Use studentsdb go drop table grade六、实验思考1 使用Transact-SQL语句删除在studentsdb数据库的grade表添加的“备注”数据列。Use studentsdb alter table grade drop column备注go2 在SQL Server管理平台中,对于studentsdb数据库的student_info表而言,如果输入相同学号的

温馨提示

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

评论

0/150

提交评论