1、创建数据库
(1)创建一个学生课程数据库
数据库名为“DB_姓名首字母英文大写”(如姓名为张三的同学建立的数据库为DB_ZS,以下所有的操作都基于该数据库),包含主数据文件,日志文件和辅助数据文件Student_DB1,所有文件路径均存放在例如E:数据库原理与应用19202\database\ 下。其中,数据库主数据文件初始大小为5MB,最大大小为30MB,数据库自动增长,增长方式是按5%比例增长。日志文件初始为3MB,最大可增长到10MB,按2MB增长。辅助数据文件Student_DB1,初始大小为3MB,按2MB自动增长,不限制最大值。
(2)在上述建的数据库中,用界面操作方式修改辅助数据文件Student_DB1的增长方式为1%,最大增长到10MB。
2、数据表的设计
用界面操作方式为数据库DB_ZS添加如下3个表(即是教材P79页的图3.2中对应的表):
学生表:Student(Sno, Sname, Ssex, Sage, Sdept);
课程表:Course(Cno, Cname, Cpno, Ccredit);
学生选课表:SC(Sno, Cno, Grade)
学生表的逻辑设计:
列名 | 类型 | 长度 | 主码/外码 | 允许空值 | 说明 |
---|---|---|---|---|---|
Sno | char | 9 | 主码 | 非空 | 学号 |
Same | char | 20 | 非空 | 姓名 | |
Ssex | char | 2 | 空 | 性别 | |
Sage | smallint | 空 | 年龄 | ||
Sdept | char | 20 | 空 | 系别 |
课程表的逻辑设计:
列名 | 类型 | 长度 | 主码/外码 | 允许空值 | 说明 |
---|---|---|---|---|---|
Cno | char | 4 | 主码 | 非空 | 课程号 |
Cname | char | 40 | 非空 | 课程名 | |
Cpno | char | 4 | 空 | 先修课程号 | |
Ccredit | smallint | 空 | 学分 |
选课表的逻辑设计:
列名 | 类型 | 长度 | 主码/外码 | 允许空值 | 说明 |
---|---|---|---|---|---|
Sno | char | 9 | 外码(参照学生表中的sno列) | 非空 | 学号 |
Cno | char | 4 | 外码(参照课程表中的cno列) | 非空 | 课程号 |
Grade | smallint | 空 | 成绩 |
说明:选课表的主码是(Sno, Cno)
3、数据表记录的“增删改”操作
参照教材P79页的图3.2为各个表添加相应的元组。并做如下的操作:
(1) 删除选修1号课程的学生选修课的记录
。
(2) 修改刘晨的信息系统课程分数为89。
(3) 增加王敏同学选修数据库课程的信息,得分为90分。
(4) 为Student表增加列Sbirthday,数据类型为datetime型,初始为NULL。
(5) 修改SC表的成绩列,将其数据类型改为INT。
4、数据库备份
磁盘备份:直接将DB_ZS数据库备份到E盘backup下,备份数据库名为DB_ZS.bak。
5、数据库的删除
将数据库DB_ZS用界面操作方式进行删除。
6、还原数据库
用所得到的备份数据库对数据库进行还原。
7、分离附加数据库
对DB_ZS数据库进行分离并附加到当前的SQL Server服务器中。
来源:oschina
链接:https://my.oschina.net/u/4322890/blog/4326495