数据库实验三作业及答案
- 格式:docx
- 大小:46.71 KB
- 文档页数:4
实验3 SQL Server 数据表的管理
一、实验目的
1.学会使用企业管理器和Transact-SQL语句CREATE TABLE和ALTER TABLE创建和
修改表。
2.学会在企业管理器中对表进行插入、修改和删除数据操作。
3.学会使用Transact-SQL语句对表进行插入、修改和删除数据操作。
4.了解SQL Server的常用数据类型。
二、实验准备
1.了解在企业管理器中实现表数据的操作,如插入、修改和删除等。
2.掌握用Transact-SQL语句对表数据进行插入(INSERT)、修改(UPDATE)和删
除(DELETE和TRANCATE TABLE)操作。
三、实验内容及步骤
1.启动企业管理器,展开studentsdb数据库文件夹。
2.在studentsdb数据库中包含有数据表student_info、curriculum、grade,这些
表的数据结构如图1-2、图1-3和图1-4所示。
图1-2 学生基本情况表student_info
图1-3 课程信息表curriculum
图1-4 学生成绩表grade
3.在企业管理器中创建student_info、curriculum表。
4.在企业管理器中,将student_info表的学号列设置为主键,非空。
5.使用Transact-SQL语句CREATE TABLE在studentsdb数据库中创建grade表。CREATETABLE grade
(学号varchar(4),
课程编号varchar(4),
分数decimal(5,0)
)
6.student_info、curriculum、grade表中的数据如图1-5、图1-6和图1-7所示。
图1-5 student_info的数据
图1-6 curriculum的数据
图1-7 grade的数据
7.在企业管理器中为student_info、curriculum、grade表添加数据。
8.使用Transact_SQL语句INSERT INTO...VALUES向studentsdb数据库的grade
表插入以下数据:
学号课程编号分数
0004 0001 80
答; CREATE TABLE grade
(学号 char(4),
课程编号 char(4),
分数 decimal
)
INSERT INTO grade VALUES('0004','0001','80')
9.使用Transact_SQL语句ALTER TABLE修改curriculum表的“课程编号”列,使
之为非空。
答: ALTER TABLE curriculum
ALTER COLUMN 课程编号 char(4) NOT NULL
10.使用Transact_SQL语句ALTER TABLE修改grade表的“分数”列,使其数据类型为real。
答: ALTER COLUMN 分数 real
11.使用Transact_SQL语句ALTER TABLE修改student_info表的“姓名”列,使其列名为
“学生姓名”,数据类型为archar(10),非空。
答:ALTER TABLE student_info
ALTER COLUMN 姓名学生姓名
ALTER TABLE student_info
ALTER COLUMN 学生姓名 varchar(10) NOT NULL
12.分别使用企业管理器和Transact_SQL语句DELETE删除studentsdb数据库的grade表中学号为'0004'的成绩记录。
答:DELETE grade WHERE 学号='0004'
13.使用Transact_SQL语句UPDATE修改studentsdb数据库的grade表中学号为
'0003'、课程编号为'0005'、分数为90的成绩记录。
答:UPDATE grade SET 分数=90
WHERE 学号='0003' and 课程编号='0005'
14.使用Transact_SQL语句ALTER...ADD为studentsdb数据库的grade表添加一个
名为“备注”的数据列,其数据类型为VARCHAR(20)。
答:ALTER TABLE grade ADD 备注 VARCHAR(20) NULL
15.分别使用企业管理器和Transact_SQL语句DROP TABLE删除studentsdb数据库
中的grade表。
答: DROP TABLE grade
四、实验思考
1.使用Transact-SQL语句删除在studentsdb数据库的grade表添加的“备注”数据列。
DELETE FROM grade Where 学号='0004'
UPDATE grade SET 分数=90 WHERE 学号='0003' and 课程编号='0005'
ALTER TABLE grade ADD 备注 VARCHAR(20) NOT NULL
2.在企业管理器中,studentsdb数据库的student_info表的数据输入时,如果输入相同学号的记录将出现什么现象?怎样避免该情况的发生?
答:出现红色的感叹号。将数据一行一行的输入就可以避免。