华联学院《SQL数据库系统》第2——5章例题及解答

上传人:东*** 文档编号:269976541 上传时间:2022-03-24 格式:DOC 页数:36 大小:129.50KB
返回 下载 相关 举报
华联学院《SQL数据库系统》第2——5章例题及解答_第1页
第1页 / 共36页
华联学院《SQL数据库系统》第2——5章例题及解答_第2页
第2页 / 共36页
华联学院《SQL数据库系统》第2——5章例题及解答_第3页
第3页 / 共36页
华联学院《SQL数据库系统》第2——5章例题及解答_第4页
第4页 / 共36页
华联学院《SQL数据库系统》第2——5章例题及解答_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《华联学院《SQL数据库系统》第2——5章例题及解答》由会员分享,可在线阅读,更多相关《华联学院《SQL数据库系统》第2——5章例题及解答(36页珍藏版)》请在金锄头文库上搜索。

1、SQL数据库系统第25章例题及解答第二章例题【例2-1】使用SQL语句,建立名为score的数据库,包含一个主文件,一个次数据文件和一个事务日志文件。主文件的逻辑名称为score_data,初始大小为3MB,最大为8MB,增长速度为10%。次文件的逻辑名称为score_data1,初始大小为2MB,最大为5MB,增长速度为1MB。事务日志文件为score_log,初始大小为2MB,最大大小不受限制,增长速度为1MB。CREATE DATABASE scoreON PRIMARY(NAME=score_data,FILENAME=D:studentscore_data.mdf, -目录要存在SI

2、ZE=3MB,MAXSIZE=8MB,FILEGROWTH=10%),(NAME=score_data1,FILENAME=D:studentscore_data1.ndf,SIZE=2MB,MAXSIZE=5MB,FILEGROWTH=1MB)LOG ON(NAME=score_log,FILENAME=D:studentscore_log.ldf,SIZE=2MB,FILEGROWTH=1MB)【例2-2】删除score数据库。DROP DATABASE student【例2-3】将student数据库收缩到只保留60%的空间。DBCC SHRINKDATABASE(student,60)

3、【例2-4】在student数据库中,创建学生表(student)。(1) 启动“SQL Server Management Studio”程序,在“对象资源管理器”中展开“数据库”“student”数据库节点。(2) 右击“表”节点,在弹出的快捷菜单中选择“新建表”命令,打开表设计窗口。根据表student的物理设计要求,输入相应的列名、选择数据类型、是否为空及主键等情况。(3) 最后,点击工具栏上的“保存”按钮,或“文件”菜单中的“保存”命令,在弹出的“选择名称”对话框中,输入“student”,点击“确定”按钮。【例2-5】使用对象资源管理器为student表建立s_id的主键约束、cl

4、ass_id的外键约束、s_sex为“男”或“女”的检查约束、nation默认为“汉”和politic默认为“团员”的默认约束。(1) 选择student表,点右键,在弹出的快捷菜单中选择“设计”,打开表设计窗口。(2) 选择“s_id”字段,执行“表设计器”“设置主键”菜单命令,或者点右键,选择“设置主键”,此时,该字段前出现了主键标志。(3) 单击工具栏上的“关系”按钮,或者“表设计器”菜单中的“关系”命令,弹出“外键关系”对话框,单击“添加”按钮在窗口左边的子窗格中添加一个主外键关系并选中,再单击展开“表和列规范”选项。(4) 单击“表和列规范”选项后面的按钮,弹出“表和列”对话框。在“

5、主键表”下拉选项列表中选择表“class”,在其下面的下拉选项列表中选择主键“class_id”;在“外键表”student下面对应的下拉列表中选择外键“class_id”。(5) 单击“表和列”对话框的“确定”按钮,回到“外键关系”对话框,修改名称框内容为“FK_student_class”,单击“关闭”按钮,即可完成“class”和“student”两个表的主外键关系创建。(6) 单击工具栏上的“管理CHECK约束”按钮或“表设计器”菜单中的“CHECK约束”命令,弹出“CHECK约束”对话框。(7) 单击“CHECK约束”对话框中的“添加”按钮,左边的窗格中添加一个CHECK约束,修改名

6、称框中的内容为“CK_student_sex”,单击“常规”“表达式”栏目后面的按钮,弹出“CHECK约束表达式”对话框,并编写约束条件“s_sex=男 OR s_sex=女”。(8) 在表设计器窗口中,选择所要修改的字段nation,在下面的常规属性中,找到“默认值或绑定”,在右侧的文本框中输入默认值“汉”,如图2-46所示。以同样的方法,选择“politic”字段,设置默认值为“团员”。(9) 按“Ctrl+S”组合键或单击工具栏上的“保存”按钮保存表设计。【例2-6】使用对象资源管理器为class表建立class_name的唯一性约束。(1) 选择class表,点右键,在弹出的快捷菜单中

7、选择“设计”,打开表设计窗口。(2) 选择字段class_name,点右键,选择“索引/键(I)”。(3) 在弹出的“索引/键”对话框中,点击左下角的“添加”按钮,在“是唯一的”后面的下拉列表中,选择“是”,将该“约束”的名称改为“UK_class”,点击常规中的列选项右侧按钮。(4) 在弹出的“索引列”对话框中的列名下拉列表中,选择“class_name”字段,点击“确定”按钮。【例2-7】在对象资源管理器中,删除student表的主外键约束。在对象资源管理器中,展开student表,再展开“键”,出现相应的主外键约束名,选择“FK_student_class”项,点右键,在快捷菜单中,选择

8、“删除”命令。【例2-8】删除student表中的class_id的外键约束和s_sex的检查约束。ALTER TABLE studentDROP CONSTRAINT FK_student_classDROP CONSTRAINT CK_student_sex【例2-9】删除学生表(student)和班级表(class)。USE STUDENTGODROP TABLE studentDROP TABLE class【例2-10】向student表中插入一条记录,步骤如下:(1) 启动“Microsoft SQL Server Management Studio”,在“对象资源管理器”中依次展

9、开“服务器”“数据库”“表”目录,找到需要插入数据记录的表。(2) 在student表上右击,在弹出的快捷菜单中选择“编辑前200行(E)”选项。【例2-11】在教师表(teacher)中,删除一条记录。(1) 启动“Microsoft SQL Server Management Studio”,在“对象资源管理器”中依次展开“服务器”“数据库”“表”目录,找到需要删除记录的表。(2) 以teacher表为例,在teacher表上右击,在弹出的快捷菜单中选择“编辑前200行(E)”选项,打开teacher表。(3) 选择要删除的记录行,点右键,在快捷菜单中选择“删除”选项。(4) 在弹出删除确

10、认对话框中单击“是”按钮,即可成功删除记录。第三章例题【例3-1】检索学生表中的所有信息。SELECT * FROM student或者:SELECT s_id,s_name,s_sex,born_date,nation,place,politic,tel,address,class_id,resumeFROM student【例3-2】检索学生表中学生的学号、姓名和班级号。SELECT s_id,s_name,class_id FROM student【例3-3】查询学生的学号、姓名和籍贯。SELECT s_id AS 学号,s_name AS 姓名,s_id AS 籍贯FROM stude

11、nt【例3-4】查询成绩表中没有成绩的学生。SELECT 学号=s_id, 姓名=s_name,江扬学院 AS 学校名称FROM student【例3-5】查询所有男学生的学号、姓名、性别和出生日期。SELECT s_id, s_name, s_sex, born_dateFROM student WHERE s_sex=男【例3-6】查询1989年以后出生的学生基本信息。SELECT * FROM student WHERE born_date1989-12-31【例3-7】查询除江苏南通以外所有学生的学号、姓名信息。SELECT s_id,s_name FROM student Where

12、 place 江苏南通【例3-8】查询1989年以后出生的所有女生的基本信息。SELECT * FROM student WHERE born_date1989-12-31 AND s_sex=女【例3-9】查询学生表中非团员的学生信息。SELECT * FROM student WHERE NOT(politic=团员)【例3-10】查询学生表中班级号为09020111或09040911的学生的学号、姓名、班级编号、家庭住址和备注信息。SELECT s_id, s_name, class_id, address, resume FROM student WHERE class_id=0902

13、0111or class_id=09040911【例3-11】查询返回众多学生记录中前五位女生的姓名和地址信息。SELECT TOP 5 s_id,addressFROM student WHERE s_sex=女【例3-12】查询返回众多学生记录中前20%的女生的姓名和地址信息。SELECT TOP 20 PERCENT s_id,addressFROM student WHERE s_sex=女【例3-13】按出生日期的降序显示学生表中学生的姓名和出生日期。SELECT s_name,born_dateFROM studentORDER BY born_date DESC【例3-14】查询

14、成绩表中60分以上学生的学号、课程号和分数,并且按学生成绩和课程号依次升序排序。SELECT s_id,c_id,gradeFROM scoreWHERE grade60ORDER BY grade ,c_id【例3-15】查找成绩表中090406号课程的最高分和最低分SELECT MAX(grade)最高分,MIN(grade)最低分FROM scoreWHERE c_id=090406【例3-16】计算成绩表中0902011101号学生的总成绩。SELECT MAX(grade)最高分,MIN(grade)最低分FROM scoreWHERE s_id=0902011101【例3-17】计

15、算成绩表中学号为0902011101的学生的平均成绩SELECT AVG(grade)平均分FROM scoreWHERE s_id=0902011101【例3-18】统计成绩表中每个学生的总分和平均分,把查询结果按总分的降序排列输出。SELECT s_id,SUM(grade)总分,AVG(grade)平均分FROM scoreGROUP BY s_idORDER BY 总分 DESC【例3-19】统计学生表中学生的总数。SELECT COUNT(s_id)学生总数FROM student【例3-20】统计学生表中各个班学生的总人数。SELECT class_id,COUNT(s_id) 人数F

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 数据库

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号