SQL修改列及表名的問(wèn)題
遇到一個(gè)問(wèn)題,怎么修改int的列為char,使用SQL語(yǔ)句的話,因?yàn)閿?shù)量量比較大,查詢(xún)分析器里操作會(huì)超時(shí)失敗,剛開(kāi)始認(rèn)為執(zhí)行下面語(yǔ)句就可以了
Alter table Stock alter column StockCount char
結(jié)果失敗,檢查了下,總結(jié)如下
執(zhí)行上門(mén)操作需要先對(duì)表檢查
1.該列不是主鍵之類(lèi)的,是的話要移除
2.查看約束,有和該列關(guān)聯(lián)的約束也要解除
3.索引看下是否用到該列
大概就這么多,我第二步就解決了上面的SQL修改列失敗問(wèn)題
附帶下面的語(yǔ)句
增加列
1:在表table1中增加name列為text型
alter table table1 add name text
2:在表table2中增加nob列為int型且設(shè)自增量為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查詢(xún)分析器的使用技巧,有時(shí)候臨時(shí)忘記語(yǔ)句怎么寫(xiě),但是修改表數(shù)據(jù)又提示超時(shí)
這時(shí)候可以,點(diǎn) “工具”->選項(xiàng)->設(shè)計(jì)器->表設(shè)計(jì)器和數(shù)據(jù)庫(kù)設(shè)計(jì)器->自動(dòng)生成更改腳步(這個(gè)選項(xiàng)打上勾)
然后,再次去修改數(shù)據(jù),提示超時(shí)之后,會(huì)得到對(duì)應(yīng)的sql執(zhí)行代碼,把代碼提出來(lái)放在查詢(xún)分析器里手動(dòng)執(zhí)行就可以執(zhí)行成功了
【編輯推薦】