千家信息网

Oracle alter操作

发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,因为Oracle对于列的增删改操作格式略有不同,为了方便日后查看,特此记录。1、增加列:SQL> alter table t1 add y integer;Table alteredExecuted
千家信息网最后更新 2024年11月22日Oracle alter操作

因为Oracle对于列的增删改操作格式略有不同,为了方便日后查看,特此记录。

1、增加列:

SQL> alter table t1 add y integer;

Table altered

Executed in 0.046 seconds

说明:增加列的格式为 alter table 表名 add 新增列名 数据类型;


2、删除列


SQL> alter table t1 drop column y;

Table altered

Executed in 0.015 seconds


说明:单独删除一列的格式为 alter table 表名 drop column 列名;


3、修改列

SQL>alter table t1 modify i number(10);

说明:修改列的格式为 alter table 表名 modify 列名 数据类型;

特别注意:如需更改列数据类型,转换前需要备份列数据后清除列数据,否则更改失败!


4、重命名列

SQL> alter table t1 rename column i to x;

Table altered

Executed in 0.062 seconds


说明:重命名列的格式为 alter table 表名 rename column 列名 to 新列名;、


5、删除多列


SQL> alter table t drop (a,b);

Table altered

Executed in 1.56 seconds


说明:同时删除多列的格式为 alter table 表名 drop (列名1,列名2,....列名N);

同时需要说明的是,同时删除多列不能把表中的所有列都删除,如果都删除表就没有任何意义。


6、更新主键

如果表之前有主键,需要删除

alter table 表名 drop constraint 主键名;

添加新的主键

alter table 表名 add constraint 主键名 primary key (表中的列)

注意:主键名自定义,可以不与列名相同。


最后,稍稍地鄙视一下oracle的开发人员,sql命令语句格式一点都不规范,过于随意!



0