多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > Sqlserver > Alter Table修改表結構的錯誤及解決方法

Alter Table修改表結構的錯誤及解決方法

來源:程序員人生   發布時間:2013-12-08 18:28:20 閱讀次數:3803次
SQL Server幫助文檔中,Alter Table對表結構的修改命令,很多都會出現錯誤,下面特針對此常見錯誤做出詳細說明,文章中有引用Leo的方法例題

代碼
一、為標識列添加默認值
下面的示例將修改 CompanyName 列,使其具有默認值:
ALTER TABLE MyCustomers ADD DEFAULT 'Datum Corporation' FOR [CompanyName]

二、如果設置了該列的默認值,那么再對該列結構作修改操作,都將引發錯誤(如刪除或修改該列的默認值等)
如執行:alter table TableName drop column ColumnName語句時就會報錯,如下,
“消息 5074,級別 16,狀態 1,第 1 行
對象'DF__Tb_SalaryPar__aa__7DB89C09' 依賴于 列'aa'。
消息 4922,級別 16,狀態 9,第 1 行
由于一個或多個對象訪問此列,ALTER TABLE DROP COLUMN aa 失敗。”

因為存在了default約束,此時我們需要做的:
1.查找出表中該列的約束名稱
declare @conName varchar(50)
select @conName =b.name from sysobjects b join syscolumns a on b.id = a.cdefault
where a.id = object_id('TableName')
and a.name ='ColumName'

2. 刪除約束刪除該列 即可
exec('alter table TableName drop constraint ' + @conName)
exec('alter table TableName drop column ColumName')

三、其它操作
向表中增加一個address字段:
  ALTER TABLE distributors ADD COLUMN [address] varchar(30)
  從表中刪除一個字段:
  ALTER TABLE distributors DROP COLUMN [address] RESTRICT
  在一個操作中修改兩個現有字段的類型:
  ALTER TABLE distributors ALTER COMUMN [address] varchar(20)
給一個字段增加一個非空約束:
ALTER TABLE distributors ALTER COLUMN [address] varchar(80) NOT NULL
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 午夜视频入口 | 伊人久久大香线焦在观看 | 国产午夜精品理论片久久影视 | 92看片淫黄大片欧美看国产片 | 在线亚洲+欧美+日本专区 | 91亚洲成人 | 亚洲高清一区二区三区 | 欧洲爱爱| 久久欧美久久欧美精品 | 国产成人精品一区 | 国产精品久久久免费视频 | 成人在线不卡视频 | 欧美乱妇高清无乱码亚洲欧美 | 一级爱爱| 日韩精品一区二区三区视频 | 亚洲欧美视频在线播放 | 两性午夜又粗又大又爽视频 | 天堂网址| 老司机成人在线视频 | 亚洲伊人久久大香线焦 | 欧美美女xx | h亚洲 | 免费一级在线 | 另类小说 亚洲 | 日本护士xxxx黑人巨大 | 青娱乐伊人 | 中文字幕在线亚洲 | 日本一级淫片aaaaaa | 黑人性hd| 国产九九精品 | 欧美日韩性生活视频 | 成人久久久 | 免费黄网址 | 亚洲国产精品久久精品成人 | 欧美疯狂性受xxxxx另类 | 免费一看一级毛片 | 亚洲成人影院在线 | 免费看国产精品久久久久 | 久久精品免费一区二区三区 | 亚洲乱码一二三四区 | 欧美另类图片小说 |