数据库实验二
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
班级学号姓名实验组别实验日期室温报告日期成绩报告内容:(目的和要求、原理、步骤、数据、计算、小结等)
实验名称:SQL Server数据表的管理
1.实验目的
(1)掌握使用SQL Server管理平台和Transact-SQL语句CREATE TABLE和ALTER TABLE创建和修改表的方法。
(2)掌握在SQL Server管理平台中对表进行插入、修改和删除数据操作的方法。
(3)掌握使用Transact-SQL语句对表进行插入、修改和删除数据操作的方法。
(4)了解SQL Server的常用数据类型。
2.实验内容及步骤
(1)启动SQL Server管理平台,在对象资源管理器中展开studentsdb数据库文件夹。
(2)在studentsdb数据库中包含有数据表student_info、curriculum、grade,这些表的数据结构如图1-2至图1-4所示。
图1-2 学生基本情况表student_info
图1-3 课程信息表curriculum
图1-4 学生成绩表grade
(3)在SQL Server管理平台中创建student_info、curriculum 表。
(4)在SQL Server管理平台中,将student_info表的学号列设置为主键,非空。
(5)使用Transact-SQL语句CREATE TABLE在studentsdb数据库中创建grade表。
(6)student_info、curriculum、grade表中的数据如图1-5至图1-7所示。
图1-5 student_info的数据
图1-6 curriculum的数据
图1-7 grade的数据
(7)在SQL Server管理平台中为student_info、curriculum、grade表添加数据。
(8)使用Transact-SQL语句INSERT INTO...VALUES向studentsdb数据库的grade表插入数据:学号为0004,课程编号为0001,分数为80。
(9)使用Transact-SQL语句ALTER TABLE修改curriculum表的“课程编号”列,使之为非空。
(10)使用Transact-SQL语句ALTER TABLE修改grade表的“分数”列,使其数据类型为real。
(11)使用Transact-SQL语句ALTER TABLE修改student_info 表的“姓名”列,列名为“学生姓名”,类型为varchar(10),非空。
(12)分别使用SQL Server管理平台和Transact-SQL语句DELETE删除studentsdb数据库的grade表中学号为0004的成绩记录。
(13)使用Transact-SQL语句UPDATE修改studentsdb数据库的grade表中学号为0003、课程编号为0005的分数为90的成绩记录。
(14)使用Transact-SQL语句ALTER...ADD为studentsdb数据库的grade表添加一个名为“备注”的数据列,其数据类型为VARCHAR(20)。
3.实验思考
(1)使用Transact-SQL语句删除在studentsdb数据库的grade 表添加的“备注”数据列。
Alter table grade drop column 备注
(2)在SQL Server管理平台中,studentsdb数据库的student_info表的数据输入时,如果输入相同学号的记录将出现什么现象?怎样避免该情况的发生?
出现学号重复记录,导致插入删除冲突。避免方式就是将学号设为主键,不能重复。
(3)已经打开的表能删除吗?
不能,必须关闭并保存已经打开的表才能删除。
(4)在SQL Server 2005中能将数据表中的字段名和其数据类型同时改变吗?
不能,字段和类型是相互对应的,要同时改变。