首页 > 技术文章 > alter语句关于表结构修改的用法

lma0702 2020-08-05 09:32 原文

需要修改结构的,就用到alter语句,方法如下:

ALTER TABLE语句用于修改已经存在的表的设计。

语法:ALTER TABLE table ADD COLUMN field type[(size)] [NOT NULL] [CONSTRAINT index]
ALTER TABLE table ADD CONSTRAINT multifieldindex
ALTER TABLE table DROP COLUMN field
ALTER TABLE table DROP CONSTRAINT indexname

说明:table参数用于指定要修改的表的名称。
ADD COLUMNSQL的保留字,使用它将向表中添加字段。
ADD CONSTRAINTSQL的保留字,使用它将向表中添加索引。
DROP COLUMNSQL的保留字,使用它将向表中删除字段。
DROP CONSTRAINTSQL的保留字,使用它将向表中删除索引。
field指定要添加或删除的字段的名称。
type参数指定新建字段的数据类型。
size参数用于指定文本或二进制字段的长度。
indexname参数指定要删除的多重字段索引的名称。

sql*plus或第三方可以运行sql语句的程序登录数据库:

ALTER TABLE (表名) ADD (列名 数据类型);
ALTER TABLE (表名) MODIFY (列名 数据类型);
ALTER TABLE (表名) RENAME COLUMN (当前列名) TO (新列名);
ALTER TABLE (表名) DROP COLUMN (列名);
ALTER TABLE (当前表名) RENAME TO (新表名);

如:
Alter Table Employ Add (weight Number(38,0)) ;

Alter Table Employ Modify (weight Number(13,2)) ;

Alter Table Emp Rename Cloumn weight To weight_new ;
ALTER TABLE emp DROP COLUMN weight_new ;

ALTER TABLE bouns RENAME TO bonus_new;
增加一个列:
ALTER TABLE 表名 ADD(列名 数据类型);
如:
ALTER TABLE emp ADD(weight NUMBER(38,0));

修改一个列的数据类型(一般限于修改长度,修改为一个不同类型时有诸多限制):
ALTER TABLE 表名 MODIFY(列名 数据类型);
如:
ALTER TABLE emp MODIFY(weight NUMBER(3,0) NOT NULL);

给列改名:
ALTER TABLE 表名 RENAME COLUMN 当前列名 TO 新列名;
如:
ALTER TABLE emp RENAME COLUMN weight TO weight_new;

删除一个列:
ALTER TABLE 表名 DROP COLUMN 列名;
如:
ALTER TABLE emp DROP COLUMN weight_new;

将一个表改名:
ALTER TABLE 当前表名 RENAME TO 新表名;
如:
ALTER TABLE bouns RENAME TO bonus_new


========================================================================

修改用户密码:
alter USER user IDENTIFIEDBY ’newpassword’REPLACE ’oldpassword’

推荐阅读