点滴技术生活 2019-12-07
一、创建数据库
创建一个名为Student_Mis的数据库
create database Student_Mis /* 数据库名称 */ on primary (name = ‘Student_Data‘, /* 逻辑文件名 */ filename = ‘F:\SQL list\Student_Data_Mis.mdf‘, /* 操作系统下的数据库储存文件名 */ size = 10mb, /* 数据库最初储存空间 */ maxsize = 50mb, /* 数据库最大储存空间 */ filegrowth = 5mb) /* 数据库增长数量 */ log on (name = ‘Student_Log‘, filename = ‘F:\SQL list\Student_Log_Mis.ldf‘, size = 5mb, maxsize =20mb, filegrowth = 5mb)
二、创建数据表
创建Depts,Students,Courese,Reports四个表
create table Depts (Dno char(5) primary key, Dname char(20) not null) create table Students (Sno char(5) primary key, Sname char(20) not null, Ssex char(2), Birthday Date, Dno char(5), constraint FK_Dno foreign key(Dno) references Depts) create table Courses (Cno char(6) primary key, Cname char(20), Pre_Cno char(6), Credits int) create table Reports (Sno char(5), Cno char(6), Grade int check(Grade>=0 and Grade<=100), primary key(Sno,Cno), constraint Student_Report foreign key(Sno) references Students, constraint Courses_Report foreign key(Cno) references Courses)
三、插入数据
1)插入Courses数据
insert into Courses values (‘C01‘,‘英语‘,null ,4), (‘C02‘,‘数据结构‘,‘C05‘,2), (‘C03‘,‘数据库‘,‘C02‘,2), (‘C04‘,‘DB_设计‘,‘C03‘,3), (‘C05‘,‘C++‘,null,3), (‘C06‘,‘网络原理‘,‘C07‘,3), (‘C07‘,‘操作系统‘,‘C05‘,3)
2)插入Depts数据
insert into Depts values (‘D01‘,‘自动化‘), (‘D02‘,‘计算机‘), (‘D03‘,‘数学‘), (‘D04‘,‘通信‘), (‘D05‘,‘电子‘)
3)插入Students数据
由于Students表有外键约束,所以Students表插入数据必须于Depts表后
insert into Students values (‘S01‘,‘王建平‘,‘男‘,‘1995-10-12‘,‘D01‘), (‘S02‘,‘刘华‘,‘女‘,‘1997-08-21‘,‘D01‘), (‘S03‘,‘范林军‘,‘女‘,‘1998-02-11‘,‘D02‘), (‘S04‘,‘李伟‘,‘男‘,‘1996-12-22‘,‘D03‘), (‘S05‘,‘黄河‘,‘男‘,‘1999-10-31‘,‘D03‘), (‘S06‘,‘长江‘,‘男‘,‘1994-04-08‘,‘D03‘)
4)插入Reports数据
由于Reports表有表级完整性约束,所以Reports表数据需最后插入
insert into Reports values (‘S01‘,‘C01‘,92), (‘S01‘,‘C03‘,84), (‘S02‘,‘C01‘,90), (‘S02‘,‘C02‘,94), (‘S02‘,‘C03‘,82), (‘S03‘,‘C01‘,72), (‘S03‘,‘C02‘,90), (‘S04‘,‘C03‘,75)
以上操作完成Student_Mis数据库的创建及Courses、Depts、Reports、Students四个表的创建及数据插入
参考:数据库原理及其应用教程(第四版 科学出版社)