sql server 查詢欄位上的約束

2022-03-28 15:13:11 字數 1223 閱讀 9734

1.  當欄位沒有預設值或者約束的時候可以使用:

alter table [table_name] drop column [column_name] 來刪除。

當有預設值的時候應該先刪除預設值,然後再刪除此列,不然會報錯。具體方法如下

select b.name from sysobjects b join syscolumns a on b.id = a.cdefault where a.id =

object_id('

表名') and a.name ='列名

'」;alter table recording drop constraint 約束名

alter table 表名drop column 列名

示例:如下為刪除資料庫

[musicstore]中albummodels表的price列約束

use

[musicstore

];--

資料庫名

declare

@tablename

nvarchar(100);--

表名declare

@columnname

nvarchar(100);--

列名declare

@cnt

nvarchar(100

);declare

@sqlcmd

nvarchar(1024

);set

@tablename='

albummodels

'set

@columnname='

price

'select

@cnt

= b.name from sysobjects b join syscolumns a on b.id = a.cdefault where a.id =

object_id(@tablename) and a.name =

@columnname

set@sqlcmd='

alter table '+

@tablename+'

drop constraint '+

@cnt

;exec sp_executesql @sqlcmd

2.  在sqlserver中如何增加乙個字段

alter table 表名add 欄位名稱欄位型別default 預設值

sqlserver2005查詢字段資訊

select case when a.colorder 1 then d.name else end as 表名,a.colorder as 字段序號,a.name as 欄位名,case when columnproperty a.id,a.name,isidentity 1 then else ...

SQL SERVER查詢欄位在哪個表裡

declare columnname asvarchar 100 set columnname 欄位名的模糊匹配 select表名 d.name,表說明 case when a.colorder 1then isnull f.value,else end,字段序號 a.colorder,欄位名 a....

sql查詢字段連線

我有乙個需求是把2個字段拼接成乙個字段,如 user user id,user code,user name 查詢結果是 user code user name 在寫sql語句時用連線符 select user code user name codename from user 上面這種寫法是ora...