自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

有默認(rèn)約束情況下的SQL Server刪除方法

數(shù)據(jù)庫 SQL Server
如果要刪除的表中有字段設(shè)置了默認(rèn)值,那么就不能用普通的刪除方法,下文對解決該問題的方法作了詳盡的闡述,供您參考學(xué)習(xí)。

SQL Server刪除操作是最常用的操作之一,下面就為您介紹如何在有默認(rèn)約束情況下實現(xiàn)SQL Server刪除數(shù)據(jù),希望對您能有所啟迪。

在SQL Server 中,如果給表的一個字段設(shè)置了默認(rèn)值,就會在系統(tǒng)表sysobjects中生成一個默認(rèn)約束。
如果想刪除這個設(shè)置了默認(rèn)值的字段(假設(shè)此字段名column1),執(zhí)行“ALTER TABLE table1 DROP COLUMN column1”時就會報錯:
The object .DF__xxxxxxxxxxx. is dependent on column .column1..
ALTER TABLE DROP COLUMN column1failed because one or more objects access this column.
所以SQL Server刪除此字段時需要先將系統(tǒng)表中的對應(yīng)默認(rèn)約束刪除, 可以使用下面的腳本進(jìn)行刪除:
-- this script drops the default constraint which is generated by the setting of default value.
-- SQL Server刪除約束

  1. DECLARE @tablename VARCHAR(100), @columnname VARCHAR(100), @tab VARCHAR(100)  
  2. SET @tablename='表名' 
  3. SET @columnname='字段名' 
  4. declare @defname varchar(100)  
  5. declare @cmd varchar(100)  
  6. select @defname = name  
  7. FROM sysobjects so   
  8. JOIN sysconstraints sc  
  9. ON so.id = sc.constid  
  10. WHERE object_name(so.parent_obj) = @tablename  
  11. AND so.xtype = 'D' 
  12. AND sc.colid =  
  13. (SELECT colid FROM syscolumns  
  14. WHERE id = object_id(@tablename) AND  
  15. name = @columnname)  
  16. select @cmd='alter table '+ @tablename+ ' drop constraint '+ @defname  
  17. if @cmd is null print 'No default constraint to drop'  
  18. exec (@cmd) 

-- 刪除約束結(jié)束

在刪除對應(yīng)的默認(rèn)約束后,執(zhí)行:

  1. ALTER TABLE table1 DROP COLUMN column1 

即可刪除字段。
 

 

 

【編輯推薦】

六種SQL Server刪除重復(fù)行的方法

SQL Server創(chuàng)建數(shù)據(jù)庫的命令

SQL server服務(wù)器版的安裝方法

SQL SERVER連接失敗的解決方案

帶您了解SQL Server游標(biāo)

責(zé)任編輯:段燃 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-10-22 17:22:05

sql server刪

2010-09-08 13:21:19

SQL刪除約束

2010-11-12 15:28:59

sql server默

2010-09-03 13:51:10

SQL刪除約束

2010-10-22 16:56:35

sql server刪

2010-09-08 13:14:57

SQL刪除約束

2010-06-30 10:55:13

SQL Server日

2010-07-13 16:07:26

SQL Server行

2010-11-10 11:37:29

SQL Server刪

2010-09-25 13:16:51

SQL Server外

2010-06-28 15:27:54

SQL Server

2010-11-12 14:45:19

Sql Server唯

2010-09-03 10:52:10

SQL刪除

2010-09-25 11:50:47

sql server外

2022-09-05 10:01:19

VueReact

2010-07-30 15:32:23

2010-04-25 17:34:30

負(fù)載均衡實現(xiàn)

2010-11-10 13:03:15

SQL Server存

2010-11-03 13:09:14

DB2卸載方法

2010-10-20 10:19:33

sql server刪
點贊
收藏

51CTO技術(shù)棧公眾號