数据库实验2——使用SQL语句创建和删除基本表
一. 实验目的:
1.了解SQL Server的基本数据类型。
2.学会使用Create table语句创建基本表。
二. 实验准备
- 在查询分析器中使用SQL语句完成基本表的创建、修改、删除。
- 实现基本表定义中有关完整性约束的要求。
- 注意操作结果的截图与保存,供撰写实验报告使用。
三. 实验要求
- 确定数据库包含的各表的结构,还要了解SQL Server的常用数据类型,以创建数据库的表。
2.掌握SQL Server平台Create、Alter、Drop语句的具体用法。
四、实验步骤
1. 创建基本表
打开查询分析器,在其编辑窗口中输入基本表的创建语句,点击“执行”按钮,分别完成四个基本表的创建。
在数据库EDUC中,创建如下四个表:
Class、student、course、sc
表的具体要求如下:
1.class表的结构要求
班级号: clsNO, 字符型(定长),长度为6,主码
班级名称:clsName,字符型(变长),长度16,非空
辅导员: Director,字符型(变长),长度10
专业: Specialty,字符型(变长),长度30
出现问题:创建表时各个码的定义用’;’分隔,应该用’,’分隔
修改后成功创建,PS:这里创建后没有刷新直接出现在视图,就很玄学。。。
2.student表的结构要求
学号:sno,字符型(定长),长度为8,主码
姓名:sname,字符型(变长),长度为10,非空
性别:ssex,字符型(定长),长度为2,性别只能为’男或女’
班级号:clsNO,字符型(定长),长度为6,外键
住址:saddr,字符型(变长),长度为20
年龄:sage,数值型(整数),年龄要求10~30之间
身高:height,数值型(长度为4,含两位小数)
创建student表让我学会了外码的使用以及利用check语句设置限定条件,以及短整数与定点数NUMERIC(p,q)的使用。
3.course表的结构要求
课程号:cno,字符型(定长),长度为4,主键
课程名:cname,字符型(变长),长度为16,非空
先修课程号:cpno,字符型(定长),长度为4,外键
学分:Ccredit,数值型(长度为2,含1位小数)
创建course表时,学会了利用自己的主码当做外键的参照的外码的例子。
References为复数形式,在SQL语句中有很多这样的例子。
4.sc表的结构要求
学号:sno,字符型(定长),长度为8
课程号:cno,字符型(定长),长度为4
成绩:grade,数值型(长度为3,含一位小数)
注意:本表主码与外码的定义。
本表是由学生表和课程表联系构成的选课信息表,所以其外码有两个,主码为sno和cno的集合。
2. 修改表结构
按照student的要求创建表student1,修改基本表student1:
1)增加“入学时间”列s_entrance,其数据类型为日期型(SQL server 中日期型为datetime)。
出现问题:
检查为未设置s_entrance的类型
之前手误将student表也改了
删除添加的列,恢复student数据:
2)将住址(saddr)的长度改为40。
3.删除基本表
删除基本表student1。
删除表的CASCADE级联删除选项SQL SERVER不给用,竟然连RESTRACT也不给,虽然默认的就是RESTRACT:
去除限制条件语句运行成功:
五、实验总结
本次试验在经过编码写程序之后,我也会去对学过的数据库的建立与查询有了初步的了解和应用,我觉得我所学习的知识还远远不够,需要进一步认真学习,勤加练习多做多用,使得自己能够熟练应用学到的知识。