CREATE DATABASE Teacher;
CREATE SCHEMA "S-T" AUTHORIZATION WANG;
CREATE SCHEMA AUTHORIZATION WANG;
CREATE SCHEMA TEST AUTHORIZATION WANG
CREATE TABLE TAB1 ( COL1 SMALLINT,
COL2 INT,
COL3 CHAR(20),
COL4 NUMERIC(10,3),
COL5 DECIMAL(5,2)
);
删除模式出错,
将该模式下的表和架构删除该语句可以执行。
三、练习
①、建立“学生”表Student。学号是主码,姓名取值唯一
默认状态下该表建在dbo中,代码如下:
CREATE TABLE Student
(Sno CHAR(9) PRIMARY KEY,
Sname CHAR(20) UNIQUE,
Ssex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20)
);
建立一个“课程”表Course
CREATE TABLE Course
(Cno CHAR(4) PRIMARY KEY,
Cname CHAR(40),
Cpno CHAR(4),
Ccredit SMALLINT,
FOREIGN KEY (Cpno) REFERENCES Course(Cno)
);
②、建立一个学生选课表SC
<列级完整性约束条件>:涉及相应属性列的完整性约束条件
<表级完整性约束条件>:涉及一个或多个属性列的完整性约束条件
CREATE TABLE SC
(Sno CHAR(9),
Cno CHAR(4),
Grade SMALLINT,
PRIMARY KEY (Sno,Cno),
/* 主码由两个属性构成,必须作为表级完整性进行定义*/
FOREIGN KEY (Sno) REFERENCES Student(Sno),
/* 表级完整性约束条件,Sno是外码,被参照表是Student */
FOREIGN KEY (Cno)REFERENCES Course(Cno)
/* 表级完整性约束条件, Cno是外码,被参照表是Course*/
);
③、向Student表增加“入学时间”列,其数据类型为日期型
ALTER TABLE Student ADD S_entrance DATE;
④、将年龄的数据类型由字符型(假设原来的数据类型是字符型)改为整数。
ALTER TABLE Student ALTER COLUMN Sage INT;
ALTER TABLE Course ADD UNIQUE(Cname);
四、删除基本表
DROP TABLE <表名>[RESTRICT| CASCADE];
①、删除Student表
执行出现如图所示的错误:
如果要执行成功,需要删除该外键
具体方法参照:https://blog.csdn.net/CSDN_Mr_H/article/details/90317043
注意:在使用RESTRICT和CASCADE时,要注意它们的用法,这里相对来说比较难懂,操作起来有点困难。