首頁> 資料庫> SQL> 主體

刪除表格欄位的sql語句有哪些?

coldplay.xixi
發布: 2020-06-22 15:35:19
原創
6247 人瀏覽過

推薦教學:《mysql影片教學

#刪除表格欄位的sql語句有哪些?

刪除表格欄位的sql語句有:

1.刪除沒有預設值的欄位:

alter table Test drop COLUMN BazaarType
登入後複製

2.刪除有預設值的欄位:

先刪除約束(預設值)alter table Test DROP CONSTRAINT DF__Test__BazaarType__3C4ACB5F

(alter table Test DROP COLUMN BazaarType提示報錯是DF__SheetTest__Attac__0F8D3381)

然後在刪除欄位alter table Test DROP COLUMN BazaarType

#3.

ALTER TABLE 表名 ADD 字段名 INT DEFAULT (0) NOT NULL;
登入後複製

修改主鍵欄位類型

alter table [tablename] alter column [colname] [newDataType])
登入後複製

修改某表的欄位類型時,會報錯是因為存在約束。

a。將表格中的字段設為NOT NULL(不為空)、給字段增加Default值(預設值)這樣的操作都會為該字段添加約束,增加了這些約束後,在用SQL腳本修改字段類型、刪除字段的時候都會發生類似錯誤.

b.尋找該欄位上已存在的約束,並刪除存在的約束.

c.再次執行修改/刪除腳本即可。

解決方法:

1.找出表格中該欄位的約束名稱(或根據現有的提示及物件'DF__******' )

declare @name varchar(50) select @name =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 ' + @name)
登入後複製

例如:exec('alter table T_tableName drop constraint 錯誤訊息的約束名稱' )

3. 再執行修改欄位類型的腳本即可

alter table dbo.T_tableName alter column Id BIGINT not NULL alter table dbo.T_tableName add constraint PK_Id primary key(Id)
登入後複製

推薦相關文章:《sql資料庫技術文章

以上是刪除表格欄位的sql語句有哪些?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
sql
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!