oracle修改表名和列名的多种方式
重命名表
对于已存在的表,还可以修改其名称。重命名表有两种语法形式,一种
是使用ALTER TABLE语句,语法如下:
ALTER TABLE table_name RENAME TO new_table_name;
另一种是直接使用RENAME语句,语法如下:
是使用ALTER TABLE语句,语法如下:
ALTER TABLE table_name RENAME TO new_table_name;
另一种是直接使用RENAME语句,语法如下:
RENAME table_name TO new_table_name;
修改列的名称
修改表中的列的名称的语法如下:
ALTER TABLE table_name RENAME COLUMN column_name TO new_column_name;
如,将person表中的birthday列的名称修改为age,如下:
SQL> ALTER TABLE person RENAME COLUMN birthday TO age;
表已更改。
修改列的数据类型
修改表中的列的数据类型的语法如下:
ALTER TABLE table_name MODIFY column_name new_data_type;如,将person表中的age列的数据类型修改为NUMBER(4),如下:
SQL> ALTER TABLE person MODIFY age NUMBER(4);表已更改。
注意:这里使用的alter ... modify ,注意与修改oracle的表级约束的alter ... add 区分,别弄混了。
修改表中的列的名称的语法如下:
ALTER TABLE table_name RENAME COLUMN column_name TO new_column_name;
如,将person表中的birthday列的名称修改为age,如下:
SQL> ALTER TABLE person RENAME COLUMN birthday TO age;
表已更改。
修改列的数据类型
修改表中的列的数据类型的语法如下:
ALTER TABLE table_name MODIFY column_name new_data_type;如,将person表中的age列的数据类型修改为NUMBER(4),如下:
SQL> ALTER TABLE person MODIFY age NUMBER(4);表已更改。
注意:这里使用的alter ... modify ,注意与修改oracle的表级约束的alter ... add 区分,别弄混了。
删除列
删除表中的列时可以分为一次删除一列和一次删除多列。
一次删除一列
的语法形式如下:
ALTER TABLE table_name DROP COLUMN column_name;
一次删除多列的语法形式如下:
ALTER TABLE table_name DROP (column_name , …);
对比两种语法可以看出,删除一列时需要使用COLUMN关键字,而删除
多列时则不需要。
注意:在删除oracle表级约束时,使用的一般也是alter ... drop,就删除列级约束(not null)时,使用了alter ... modify
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出,
原文链接
如有问题, 可邮件(zxy.hope@gmail.com)咨询.