admin管理员组文章数量:1530842
2024年5月9日发(作者:)
SQL-Server2012
1---参考答案
综合练习题
数据库综合练习题
SQL Server数据库操作
1.创建数据库:
操作1.1:创建一个test数据库,其主数据文件逻辑
名test_data,物理文件名test_,初始大小
10MB,最大尺寸为无限大,增长速度1MB;数据库日
志文件逻辑名称为test_log,物理文件名为test_,
初始大小为1MB,最大尺寸为5MB,增长速度为10%。
2.创建表:
操作2.1:创建学生表:
表名:student
属性列
st_id
st_nm
st_sex
st_birth
st_score
st_date
st_from
st_dpid
st_mnt
数据类型
nVarChar
nVarChar
nVarChar
datetime
int
datetime
nChar
nVarChar
tinyint
长度
9
8
2
20
2
说明:学生基本信息表
空值
Not Null
Not Null
Null
Null
Null
Null
Null
Null
Null
列约束
PK
说明
学生学号
学生姓名
学生性别
出生日期
入学成绩
入学日期
学生来源
所在系编号
学生职务
参考答案:
USE test
数据库综合练习题
GO
CREATE TABLE student
(
st_id nVarChar(9) primary key
NOT NULL ,
st_nm nVarChar(8) NOT NULL ,
st_sex nVarChar(2) NULL ,
st_birth datetime NULL ,
st_score int NULL ,
st_date datetime NULL ,
st_ from nVarChar(20) NULL ,
st_dpid nVarChar(2) NULL ,
st_ mnt tinyint NULL
)
GO
操作2.2:创建课程信息表:
表名:couse
属性列
cs_id
cs_nm
cs_tm
cs_sc
数据类型
nVarChar
nVarChar
int
int
长度
4
20
说明:课程信息表
空值
Not Null
Not Null
Null
Null
列约束
PK
说明
课程编号
课程名称
课程学时
课程学分
数据库综合练习题
参考答案:
USE test
GO
CREATE TABLE couse
(
cs_id nVarChar(4)
NULL ,
cs_nm nVarChar(20) NOT NULL ,
cs_tm int
primary key NOT
NULL ,
数据库综合练习题
数据库综合练习题
参考答案:
USE test
GO
CREATE TABLE dept
(
dp_id nVarChar(2) NOT NULL ,
dp_nm nVarChar(20) NOT NULL ,
dp_drt nVarChar(8) NULL ,
dp_tel nVarChar(12) NULL
)
GO
3.表中插入数据
操作3.1:向dept表插入一条记录,系号11,系名
自动控制系,系主任为李其余,电话81234567
INSERT INTO dept VALUES('11', '自
动控制系', '李其余', '81234567')
操作3.2:向student表插入一条记录,学号
070201001,姓名为王小五,性别为男,出生日期为1990
年9月9日,系号为11,其余字段为NULL或默认值
INSERT INTO student(st_id, st_nm,
st_sex, st_birth, st_dpid)
VALUES ('070201001', '王小五', '男
', '1990.9.9', '11' )
数据库综合练习题
操作3.3:向couse表插入一条记录,课程号1234,
课程名为操作系统,其余字段为NULL或默认值
INSERT INTO couse(cs_id, cs_nm)
VALUES ('1234', '操作系统')
操作3.4:向slt_couse表插入一条记录,课程号
1234,学名070201001,其余字段为NULL或默认值
INSERT INTO slt_couse(cs_id, st_id)
VALUES ('1234', '070201001')
4.修改表中数据
操作4.1:修改student表记录,将王小五的入学成
绩改为88
UPDATE student SET st_score=88
WHERE st_nm='王小五'
操作4.2:修改couse表记录,将所有记录的学分改
为4,学时改为64
UPDATE couse SET cs_tm=64, cs_sc=4
操作4.3:修改slt_couse表记录,将课程号为1234,
学名为070201001的记录的成绩改为77
UPDATE slt_couse SET score=77 WHERE
cs_id='1234' AND st_id='070201001'
5.删除表中数据
操作5.1:删除slt_couse表记录,将课程号为1234,
数据库综合练习题
学名为070201001的记录删除
DELETE FROM slt_couse WHERE
cs_id='1234' AND st_id='070201001'
操作5.2:删除couse表记录,将课程号为1234的
记录删除
DELETE
6.简单查询
FROM couse WHERE
cs_id='1234'
(1)查询表中所有的列
操作6.1:查询所有系的信息
SELECT * FROM dept
(2)查询表中指定列的信息
操作6.2:查询所有的课程号与课程名称
SELECT cs_id, cs_nm FROM couse
(3)在查询列表中使用列表达式
操作6.3:在查询student表时使用列表达式:入学
成绩+400
SELECT st_id, st_nm, st_score,
st_score+400 AS new_score
FROM student
(4)重新命名查询结果
操作6.4:使用AS关键字为dept表中属性指定列
数据库综合练习题
名:系号、系名、系主任、联系电话
SELECT dp_id AS 系号, dp_nm AS 系名,
dp_drt AS 系主任, dp_tel AS联系电话
FROM dept
操作6.5:使用"="号为couse表中属性指定列名:
课程号、课程名、学时(=cs_sc*16)、学分
SELECT 课程号=cs_id, 课程名=cs_nm,
学分=cs_sc, 学时=cs_sc*16
FROM couse
(5)增加说明列
操作6.6:查询dept表的系号、系名和系主任,向
查询结果中插入说明列:系号、系名和系主任
SELECT '系号:', dp_id, '系名:', dp_nm,
'系主任:', dp_drt
FROM dept
(6)查询列表中使用系统函数
操作6.7:显示所有学生的学号、姓名、性别和入学
年份
SELECT st_id, st_nm, st_sex,
DATEPART(yy,st_birth) AS 入学年份
FROM student
操作6.8:显示所有学生学号、姓名、性别和班级(学
数据库综合练习题
号前6位)
SELECT st_id, st_nm, st_sex,
LEFT(st_id, 6) AS 班级
FROM student
(7)消除查询结果中的重复项
操作6.9:显示所有学生班级
SELECT DISTINCT LEFT(st_id,6) AS 班
级 FROM student
(8)取得查询结果的部分行集
操作6.10:显示前5条学生记录信息
SELECT TOP 5 * FROM student
操作6.11:显示前25%条学生记录信息
SELECT TOP 25 PERCENT * FROM student
7.条件查询
(1)使用关系表达式表示查询条件
操作7.1:查询dept表中系号为11的院系信息
SELECT * FROM dept WHERE dp_id = '11'
操作7.2:查询student表中11系的学生学号、姓
名、性别和所在系编号
SELECT st_id, st_nm, st_sex,
st_dpid FROM student
WHERE st_dpid = '11'
数据库综合练习题
操作7.3:查询student表中2008年及以后入学的
学生信息
SELECT * FROM student
WHERE DATEPART( yy, st_date )>= 2008
操作7.4:在查询student表080808班学生的学号、
姓名、性别和入学成绩
SELECT st_id, st_nm, st_sex,
st_score FROM student
WHERE Left(st_id,6)='080808'
(2)使用逻辑表达式表示查询条件
操作7.5:查询student表中非11系的学生信息
SELECT * FROM student WHERE NOT
(st_dpid = '11')
操作7.6:查询选修了1002号课程且成绩在60以下
的学生学号
SELECT st_id FROM slt_couse
WHERE (cs_id='1002') AND (score<60)
操作7.7:查询2007年入学的11系所有男生信息
SELECT * FROM student
WHERE DATEPART(yy,st_date)=2007
AND st_dpid='11' AND st_sex='男'
操作7.8:查询11系和12系的学生信息
SELECT * FROM student
版权声明:本文标题:SQL-Server2012综合练习题1---参考答案 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1715263133a443629.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论