Oracle/MySQL/SQL Server修改表字段类型和长度
Posted eaterleader
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle/MySQL/SQL Server修改表字段类型和长度相关的知识,希望对你有一定的参考价值。
Oracle
ALTER TABLE T_USER MODIFY USERNAME VARCHAR2(18);
MySQL
ALTER TABLE T_USER CHANGE USERNAME USERNAME VARCHAR(200) NOT NULL COMMENT ‘username‘;
SQL Server
ALTER TABLE T_USER ALTER COLUMN USERNAME VARCHAR(200);
【注意】SQL Server 字段有约束或者索引,需要按如下方式处理:
- 字段是主键:
1 ALTER TABLE T_USER DROP CONSTRAINT PK_T_USER; 2 ALTER TABLE T_USER ALTER COLUMN ID VARCHAR(20) NOT NULL; 3 ALTER TABLE T_USER ADD CONSTRAINT PK_T_USER PRIMARY KEY (ID);
- 字段有约束,并且修改后字段长度大于原长度:
1 ALTER TABLE T_USER DROP CONSTRAINT UN_T_USER; 2 ALTER TABLE T_USER ALTER COLUMN USERNAME VARCHAR(20); 3 ALTER TABLE T_USER ADD CONSTRAINT UN_T_USER UNIQUE (USERNAME);
- 字段有索引,比如唯一索引,并且修改后字段长度大于原长度:
1 DROP INDEX IDX_USER ON T_USER; 2 ALTER TABLE T_USER ALTER COLUMN USERNAME VARCHAR(20); 3 CREATE INDEX IDX_USER ON T_USER(USERNAME);
以上是关于Oracle/MySQL/SQL Server修改表字段类型和长度的主要内容,如果未能解决你的问题,请参考以下文章
sql server 2008怎么修改视图中的字段属性!!例如修改字段名和字段类型!