2.修改表和添加约束

一:修改表结构

目的

格式

举例

 

 

 

 

扫描二维码关注公众号,回复: 2913180 查看本文章

1.修改列(字段)的数据类型

ALTER TABLE 表名 MODIFY(列名 数据类型);

altertable teachers modify(tid varchar2(5))

2. 增加一个列

ALTER TABLE 表名 ADD(列名 数据类型);

altertable teachers add(klass varchar2(10))

3. 给列改名字

ALTER TABLE 表名 RENAME COLUMN 当前列名 TO 新列名;

altertable teachers renamecolumn klass to klasses

4. 删除一个列

ALTER TABLE 表名 DROP COLUMN 列名;

altertable teachers dropcolumn klasses

5. 表重新命名

ALTER TABLE 当前表名 RENAME TO 新表名;

altertable teachers renameto teacher

6.给字段添加默认值

alter table 表名 modify 字段名  default 默认值 ;

altertable teacher modify klass default'1'

 

 二:约束

类别

语法格式

举例

非空约束:

就是必须为某列提供值,空值是不存在的值,既不是数字0,也不是空字符串,而是不存在、未知的情况。

Alter table 表名 modify 字段名 null;

Alter table student modify studentid null;

主键约束

唯一地标识一条数据。在表中都要设置主键。主键不能是null值。在一个表中,最多只能有一个主键约束,主键约束可以由一个列组成,也可以由两个或两个以上的列组成。主键约束同时也具有非空约束的特性。

alter table 表名

add constraint 约束名称 primary key (字段名);

alter table student

add constraint pk_id primary key (id);

外键约束:

一张表的外键需要指向另一张表的主键或者是唯一键。

至少需要两张表。含有主键的表叫主表。外键表叫从表。

alter table 表名

add constraint 约束名 foreign key(字段名1)

references grade (字段名1);

alter table student

add constraint fk_gradeid foreign key(gradeid)

references grade (gradeid);

检查约束

alter table 表名

add constraint 约束名 check (条件);

alter table student

add constraint ck_sex check (sex in ('男','女'));

alter table student

add constraint ck_phone check (length(phone)=13);

唯一约束:强调所在的列不允许有相同的值,但是,它的定义要比主键约束弱,即它所在有列允许有空值。

alter table表名

add constraint 约束名 unique(字段名);

alter table student

add constraint uq_phone unique(phone);

猜你喜欢

转载自blog.csdn.net/RachelHYC/article/details/79079007