否則妳得自己去查數據字典表。
比如下面這個例子。
唯壹約束的名稱?什麽事?t_123,?所以當我不需要這個約束時,
如果我知道名字,我可以刪除它。
- ?創建壹個測試表。
創造?桌子?test_123?(
idINT,
價值?VARCHAR(10)
);
去
- ?創造?獨壹無二?限制。
塗改?桌子?測試_123
補充?約束?t_123?獨壹無二?(值);
去
- ?刪除?獨壹無二?限制。
塗改?桌子?[test_123]?
下降?約束?[t _ 123];
如果我不知道約束的名稱,那麽我需要查找數據字典表。
挑選
tab.name?作為?[表格名稱],
idx.name?作為?[約束名稱],
列名?作為?[約束列名]
從
sys.indexes?idx
加入?sys.index_columns?idxCol?
開?(idx.object_id?=?idxCol.object_id?
然後呢。idx.index_id?=?idxCol.index_id?
然後呢。idx.is_unique_constraint?=?1)
加入?sys.tables?標簽
開?(idx.object_id?=?選項卡.對象標識)
加入?sys.columns?山口
開?(idx.object_id?=?列對象標識
然後呢。idxCol.column_id?=?col . column _ id);查詢約束名稱後,?立即刪除此約束。
上面的SQL語句,?SQL?服務器?2008快遞?下壹個測試通過了。
在其他數據庫中,因為數據字典表不同,所以語句也不同。