用SQL语句修改SQL表结构

来源:互联网 发布:淘宝店名会侵权吗 编辑:程序博客网 时间:2024/04/30 01:01

用SQL语句修改SQL表结构
转自:http://blog.csdn.net/yangna01314/archive/2010/03/12/5375026.aspx

 

 

当用户在在SQL Server 2008企业管理器中更改表结构时,必须要先删除原来的表,然后重新创建新表,才能完成表的更改,如果强行更改会出现以下提示: 不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的标进行了更改或者启用了“阻止保存要求重新创建表的更改”选项。

解决方法:
在菜单中找到“工具”,在“工具”的下拉菜单中找到“选项”,打开“选项”,你会看到“Designers”中有一条“阻止保存要求重新创建表的修改”,去掉前面的勾勾。注意,这样用的时候,一定要注意表的关联。

另外,可以用SQL语句来更改,以下为相应的代码实例:

1.更改字段类型长度
alert table 表 alert column 字段名 类型的长度
例: alter table users alter column IDcard char(20)

2.更改字段类型
alert table 表 alert column 字段名 更改后的类型
例: alert table testcity alter column cityname int

3.添加not null约束
alert table 表alert column 字段名 int not null

4.设置主键
alert table 表 add constraint 主键名 primary key(字段名)

5.更改字段名
EXEC sp_name '表名.字段名',更改后的字段名,'COLUMN'

6.添加字段名
alert table 表 add 字段名 字段类型 default null

7.更改字段默认值

alter table T_ping drop constraint DF_T_ping_p_c
alter table T_ping add constraint DF_T_ping_p_c DEFAULT ((2)) for p_c

 

备注:其实MYSQL里用SQLyog8.X可以很方便地直接修改,且能预览到SQL语句!