一:修改表结构
| 目的 | 格式 | 举例 |
修 改 表 结 构 | 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); |