数据库SQL实验题目(14-15-1)
实验一数据定义操作
实验目的
1.掌握数据库和表的基础知识
2.掌握使用创建数据库和表的方法
3.掌握数据库和表的修改、查看、删除等基本操作方法
实验内容和要求
一、数据库的创建
在开始菜单中,启动SQl Server 程序中的“SQL Server Management Studio”,在对象资源管理器窗口中,右键单击“数据库”,选择“新建数据库”,创建成绩管理数据库Grademanager,要求如下表所示:
Grademanager数据库参数表
参数参数值参数参数值
存储的数据文件路
D:\db\ 存储的日志文件路径D:\db\
数据文件初始大小 5MB 日志文件初始大小2MB
数据文件最大值20MB 日志文件最大值15MB
数据文件增长量原来10% 日志文件增长量2MB
二、表的创建、查看、修改和删除
1.表的创建
在Grademanager数据库中,右键单击“表”,选择“新建表”命令,创建如下表所示的表:(1)Student表的表结构
字段名称数据类型长度精度小数位数是否允许
Null值
说明
Sno Char 10 0 0 否学号,主码
Sname Varchar 8 0 0 是姓名
Ssex Char 2 0 0 是性别,取值:男或女Sbirthday Date 8 0 0 是出生日期
Sdept Char 16 0 0 是系名
Speciality Varchar 20 0 0 是专业名
特别注意:
为属性Ssex设置约束,需选中属性Ssex行,然后单击菜单中的“表设计器”,选择“CHECK 约束”命令,然后按照图1进行设置。
图1 设置性别的约束
(2)Course表(课程名称表)的表结构
字段名称数据类型长度精度小数位数是否允许Null值说明
Cno Char 5 0 0 否课程号,主码
Cname Varchar 20 0 0 否课程名
(3)SC表(成绩表)的表结构
字段名称数据类型长度精度小数位数是否允许Null值说明
Sno Char 10 0 0 否学号,外码
Cno Char 5 0 0 否课程号,外码
Degree Decimal 5 5 1 是成绩,0~100之间
特别注意:
①为属性Degree 约束,可参照属性Ssex进行设置,“CHECK约束对话框”中的表达式为Degree>=1 And Degree<=100
②为SC表设置外键Sno和Cno的方法:
右键单击表SC,选择“设计”命令,然后选择菜单“表设计器”中的“关系”命令,打开“外键关系”窗口,选择“添加”按钮,然后单击“表和列规范”后的按钮,按照图2进行设置,即可将SC表中的Cno属性设置为外键。按照相同的方法,将属性Sno也设置为外键。
图2为SC表设置外键Cno
2.向上述表中输入如下数据记录
学生关系表Student (右键单击表Student ,选择“编辑前200行”) Sno Sname Ssex Sbirthday Sdept Speciality 李勇 男 1987-01-12 计算机系 计算机应用 刘晨 女 1988-06-04 信息管理系 电子商务 王敏 女 1989-12-23 数学系 数学 张立
男 1988-08-25
信息管理系
电子商务
课程关系表Course 成绩表SC Cno Cname C01 数据库 C02
数学
C03 信息系统 C04 操作系统
3.修改表结构(到操作的方法即可,不需要真正地修改表中的属性) (1)向student 表中增加“入学时间”列,其数据类型为日期型 (2)将student 表中的sdept 字段长度改为20 (3)将student 表中的Speciality 字段删除
sql语句的功能有
思考题
1. SQL Server 的数据库文件有几种扩展名分别是什么 2. 如何实现数据库的备份和还原
2.在定义基本表语句时,NOT NULL 参数的作用是什么 3.主码可以建立在“值可以为NULL ”的列上吗
Sno Cno Degree C01 92 C02 85 C03 88 C02 90 C03 80 C01 91 C02 75
C01
87
实验二简单查询
实验目的
1.掌握SELECT语句的基本用法
2.使用WHERE子句进行有条件的查询
3.掌握使用IN和NOT IN,BETWEEN…AND和NOT BETWEEN…AND来缩小查询范围的方法
4.掌握聚集函数的使用方法
5.利用LIKE子句实现字符串匹配查询
6.利用ORDER BY子句对查询结果排序
7.利用GROUP BY子句对查询结果分组
实验内容和要求
一、表结构修改
1.在实验一的所建立的数据库中增加Teacher表,结构如下:
字段名称数据类型长度精度小数位数是否允许Null值说明
Tno Char 3 0 0 否教师号,主码Tname Varchar 8 0 0 是教师名
Tsex Char 2 0 0 是性别,取值:男或女Tbirthday Date 8 0 0 是出生日期
Tdept Char 16 0 0 是所在系
2.在实验一的所建立的数据库中增加Teaching表,表结构如下:
Teaching表(授课表)的表结构
字段名称数据类型长度精度小数位数是否允许Null值说明
Cno Char 5 0 0 否课程号,外码Tno Char 3 0 0 否教师号,外码Cterm Tinyint 1 0 0 是1-8之间
3.向上述两表中输入如下数据记录
教师表Teacher 授课表Teaching
Tno T name Tsex T birthday Tdept
101 李新男1977-01-12 计算机系102 钱军女1968-06-04 计算机系201 王小花女1979-12-23 信息管理系202 张小青男1968-08-25 信息管理系
二、完成下面查询
1.查询所有男生信息Cno Tno Cterm C01 101 2
C02 102 1
C03 201 3
C04 202 4
2.查询年龄大于24岁的女生学号和姓名
3.查询所有教师的Tname、Tdept
4.查询“电子商务”专业的学生姓名、性别和出生日期