首页 > 代码库 > 数据库基础(1):数据定义
数据库基础(1):数据定义
1.实验内容
1) 用Management Studio创建数据库University_Mis
2) 使用SQL语句创建关系数据库基本表:
学生表Students(Sno,Sname, Semail,Scredit,Sroom);
教师表Teachers(Tno,Tname,Temail,Tsalary);
课程表Courses(Cno,Cname,Ccredit);
成绩表Reports(Sno,Tno,Cno,Score);
其中:Sno、Tno、Cno分别是表Students、表Teachers、表Courses的主键,具有唯一性约束,Scredit具有约束“大于等于0”; Reports中的Sno,Tno,Cno是外键,它们共同组成Reports的主键。
CREATE TABLE Students ( Sno CHAR(5) PRIMARY KEY, //主键 Sname CHAR(20), Semail CHAR(20), Scredit FLOAT,CONSTRAINT A CHECK(Scredit>=0), //约束条件 Sroom CHAR(10), ) CREATE TABLE Teachers ( Tno CHAR(5) PRIMARY KEY, Tname CHAR(20), Temail CHAR(25), Tsalary INT , ) CREATE TABLE Courses ( Cno CHAR(5) PRIMARY KEY, Cname CHAR(20), Ccredit CHAR(25), ) CREATE TABLE Reports ( Sno CHAR(5), Tno CHAR(5), Cno CHAR(5), Score INT PRIMARY KEY(Sno,Tno,Cno), //共同组成的主键 CONSTRAINT Student_Report FOREIGN KEY(Sno) REFERENCES Students, CONSTRAINT Teather_Report FOREIGN KEY(Tno) REFERENCES Teachers, CONSTRAINT Course_Report FOREIGN KEY(Cno) REFERENCES Courses, )
3) 更改表Students:增加属性Ssex(类型是CHAR,长度为2),取消Scredit“大于等于0”约束。把表Courses中的属性Cname的数据类型改成长度为30。
ALTER TABLE Students ADD Ssex CHAR(2) ALTER TABLE Students DROP CONSTRAINT A ALTER TABLE Courses ALTER COLUMN Cname CHAR(30)
4) 删除表Students的一个属性Sroom。
5) 删除消表Reports。
ALTER TABLE Students DROP COLUMN Sroom DROP TABLE Reports
6) 为Courses表创建按Cno降序排列的索引。
7) 为Students表创建按Sno升序排列的索引。
CREATE INDEX Stu_Cno ON Courses(Cno DESC) CREATE INDEX Stu_Sno ON Students(Sno ASC)
8) 创建表Students的按Sname升序排列的唯一性索引。
9) 删除Students表Sno的升序索引。
CREATE UNIQUE INDEX Stu_Sname ON Students(Sname ASC) DROP INDEX Students.Stu_Sno
数据库基础(1):数据定义
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。