2013-01-16 46 views
-2

我必須在已製作的表格中添加具有唯一約束的列。該列應具有默認值作爲兩個其他列的組合,例如Posted_By和Posted_DateTime。必須在已製作的表格中創建具有唯一約束的列

如何通過sql查詢來實現它?

+1

好的 - 那是什麼問題? –

+0

如何通過sql查詢來實現它? –

+2

這是一個谷歌問題,而不是fot stackoverflow – Dariusz

回答

0

最簡單的解決方案可能是創建列,填充它,然後將其更改爲唯一。合理?

下面是一些未經測試的代碼:

ALTER TABLE TABLENAME ADD COLUMNNAME VARCHAR(100) NULL; 

UPDATE TABLENAME 
SET COLUMNNAME = Posted_By + CAST(Posted_DateTime as Varchar) 

ALTER TABLE TABLENAME ADD CONSTRAINT 
CONSTRAINTNAME UNIQUE NONCLUSTERED (COLUMNNAME) 

好運。

+0

非常感謝你,但有點問題,我已經實現它像 –

+0

UPDATE反饋 SET FB_Dup = CAST(Posted_By as varchar(max))+ CAST(Post_Date as Varchar(最大))+ ISNULL(CAST(FacebookPageAndWallMesssage_ID爲varchar(最大)),ID) –

+0

ALTER TABLE反饋添加約束 FB_DUP_MSG唯一聚集(FB_Dup) –

相關問題