①:更改字段类型长度
ALTER TABLE 表名
ALTER COLUMN 字段名 类型的长度–varchar(50)
例:把城市表的城市字段原来长度为20改为30
ALTER TABLE city
ALTER COLUMN cname varchar(30)
ALTER TABLE #temp
ALTER COLUMN bmmc NVARCHAR(30)
②:更改字段类型
ALTER TABLE 表名
ALTER COLUMN 字段名 更改后的类型
例:把城市表中的城市名字段从varchar类型改为int
ALTER TABLE city –
ALTER COLUMN cname int
ALTER TABLE #temp
ALTER COLUMN bmmc VARCHAR(40)
③:添加not null 约束
ALTER TABLE 表名
ALTER COLUMN 字段名 字段类型 NOT NULL
例:把cid(城市编号)不能输入空值
ALTER TABLE city
ALTER COLUMN cid int NOT NULL
ALTER TABLE #temp
ALTER COLUMN bmmc VARCHAR(40) NOT NULL
④:设置主键
ALTER TABLE 表名
ADD CONSTRAINT 主键名 PRIMARY KEY(字段名)
例:把cid(城市编号)设置为主键
ALTER TABLE city
ADD CONSTRAINT PK_cid PRIMARY KEY(cid)
```错误情况未定义设置的主键字段不允许为空``
ALTER TABLE #temp
ADD CONSTRAINT pk_cghth PRIMARY KEY (cghth)
![](https://img-blog.csdnimg.cn/20190117104006917.?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ4ODcyNQ==,size_16,color_FFFFFF,t_70)
```正确的情况
ALTER TABLE #temp
ALTER COLUMN cghth NVARCHAR(15) NOT NULL
ALTER TABLE #temp
ALTER COLUMN wph NVARCHAR(30)NOT NULL
ALTER TABLE #temp
ADD CONSTRAINT pk_keyid PRIMARY KEY (cghth,wph)
⑤:添加字段名
ALTER TABLE 表名
ADD 字段名 字段类型 DEFAULT NULL
例:给city表添加一个pic字段
ALTER TABLE city
ADD pic varchar(60) DEFAULT NULL
ALTER TABLE #temp
ADD djguid NVARCHAR(80) DEFAULT NULL
⑥:更改字段名
A:MYSQL
ALTER TABLE 表名 CHANGE 原字段名 新字段名 字段类型
B:ORACLE
ALTER TABLE 表名
RENAME COLUMN 原字段名 TO 新字段名 ;
C:SQL-SERVER
EXEC sp_rename ‘表名.字段名’,‘更改后的字段名’,‘COLUMN’