1,基本表的创建
创建基本表,可用CREATE TABLE 语句实现:
CREATE TABLE <基本表名>
( <列名 类型 >,.......<完整性约束>,........)
表中每个列的类型可以是基本数据类型,也可以是用户预先定义的域名.完整性约束
主要有三种子句..
例如:对于数学数据库中的四个关系:
教师关系 T (T#, TNAME,TITLE)
课程关系 C(C#,CNAME,T# )
学生关系 S (S#, SNAME,AGE,SEX)
选课关系 SC (S#,C#,SCORE)
基本表T可用下列语句创建:
CREATE TABLE T (T#, CHAR(4) NOT NULL,TNAME CHAR (8) NOT NULL,
TITLE CHAR(10), PRIMARY KEY(T#) ) SQL表中默认允许列值为空值
,但当我们要求一列的值不允许为空值是就应该在定义该列时写上关键字"NOT NULL".
2,基本表结构的修改
在基本表建立并使用一段时期后,可以根据实际需要对基本表的结构进行修改,即增加新
的列,删除原有的列或修改数据类型,宽度等.
(1)增加新的列用"ALTER......ADD..."语句,其句法如下:
ALTER TABLE <基本表名> ADD 列名 <类型>
[例如] 在基本表S中增加一个地址(ADDRESS)列,可用下列语句:
ALTER TABLE S ADD ADDRESS VARCHAR(30);
应该注意,新增加的列不能定义为"NOT NULL".基本表在增加一列后,原有元组在新增加的列上的值
都被定义为空值(NULL).
(2)删除原有的列用"ALTER...DROP..."语句,其句法如下:
ALTER TABLE <基本表名> DROP 列名 [CASCADE| RESTRICT]
此处CASCADE 方式表示:在基本表中删除某列时,所有引用该列的视图和约束也要
一起自动地被删除.而RESTRICT方式表示在没有视图或约束引用该属性时,才能在基本表中删除该列,否则拒绝删除操作.
[例如] 在基本表S中删除年龄(AGE)列,并且把引用该列的所有视图和约束也一起删除,可用下列语句:
ALTER TABLE S DROP AGE CASCADE
(3) 修改原有列的类型,宽度用"ALTER...MODIFY..."语句,其句法如下:
ALTER TABLE <基本表名> MODIFY <列名> <类型>
[例如]在基本表S中S#的长度修改为6,可用下列语句:
ALTER TABLE S MODIFY S# CHAR(6)
3,基本表的撤销
在基本表不需要时,可以用"DROP TABLE"语句撤销.在一个基本表撤销后,
其所有的数据也就丢失了.
撤销语句的句法如下:
DROP TABLE <基本表名>[CASCADE| RESTRICT]
[例如]需要撤销基本表S.但只有在没有视图或约束引用基本表S中的列时才能撤销,
否则拒绝撤销.可用下列语句实现:
DROP TABLE S RESTRICT