最新有个朋友问了个问题,怎么修改int的列为char,用SQL语句,因为数量量比较大,查询分析器里操作会超时失败,
我刚开始认为执行下面语句就可以了
Alter table Stock alter column StockCount char
结果失败,检查了下,总结如下
执行上门操作需要先对表检查
1.该列不是主键之类的,是的话要移除
2.查看约束,有和该列关联的约束也要解除
3.索引看下是否用到该列
大概就这么多,我第二步就解决了上面的修改列失败问题
附带下面的语句
增加列
1:在表table1中增加name列为text型
alter table table1 add name text
2:在表table2中增加nob列为int型且设自增量为1,且不空
alter table table1 add nob int identity(1,1) not null
删除列
例:删除table1中的id列
alter table table1 drop column id
3.修改表名
exec sp_rename '旧表名','新表名'
4.SQL查询分析器的使用技巧,有时候临时忘记语句怎么写,但是修改表数据又提示超时
这时候可以,点 “工具”->选项->设计器->表设计器和数据库设计器->自动生成更改脚步(这个选项打上勾)
然后,再次去修改数据,提示超时之后,会得到对应的sql执行代码,把代码提出来放在查询分析器里手动执行就可以执行成功了