已有大量数据的表加字段的方法

如果一个表中有大量的数据库,增加字段或增加字段长度,经常会弹出以下错误"超时时间已到,无法修改表"

用以下方法可解决问题:

--增加字段

alter   table   表名   add     字段   字段类型
例如: 
use ASE_order
alter table dbo.T_OrderBase add RemarOnlyCompany  varchar(MAX)

--增加字段长度

alter TABLE t_case alter COLUMN ca_category  char(3) NULL

以下有更详细的方法:

如果数据量非常大,达到几百万条记录以上,使用企业管理器来更改字段类型,很多时候会超时,更改不成功,这时可以使用Sql语句来更改,如下:

--更改字段类型长度
alter table 表 
alter column 字段名 类型的长度--varchar(60)
例:把城市表的城市名字段有原来的长度20改为30
alter table Testcity 
alter column cityname varchar(30)
--更改字段类型
alter table 表 
alter column 字段名 更改后的类型
例:把城市表的城市名字段有原来的varchar类型改为int类型
alter table Testcity 
alter column cityname int
--添加not null约束 
alter table 表 alter column 字段名 int not null 
例:把cid不能输入空值
alter table Testcity alter column cid int not null 
--设置主键 
alter table 表 add constraint 主键名 primary key(字段名)
例:把cid设为主键
alter table Testcity add constraint PK_cid primary key(cid)

--更改字段名

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

--添加字段名

ALTER TABLE 表 ADD 字段名 字段类型 DEFAULT null

 

-----------------------------------------------------------------------------

 

如何 添加一个默认值是0的int 型字段 字段名是 column1, 数据表是 table1:

ALTER TABLE table1 ADD column1 int NOT NULL default (0)
如果字段已经存在 新建默认值 ALTER TABLE [表名] ADD CONSTRAINT 默认值名 DEFAULT '51WINDOWS.NET' FOR [字段名] 删除默认值 ALTER TABLE [表名] DROP CONSTRAINT 默认值名

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值