2017-08-22 8 views
0

MSSQL 2014別のデータベースにTSQLをドロップする

database1で作業中にFKをデータベース2にドロップすることはできますか?

これは私のため

use database1 
go 

    IF EXISTS (SELECT 1 FROM database2.sys.foreign_keys WHERE object_id = OBJECT_ID(N'fk_in_tbl_in_other_db') AND parent_object_id = OBJECT_ID(N'database2.dbo.tableName')) 
    BEGIN 
     ALTER TABLE database2.dbo.tableName DROP CONSTRAINT fk_in_tbl_in_other_db; 
    END 

答えて

0

[OK]を動作していない、私はWHERE句にほんの少しの修正

が持つ

WHERE object_id = OBJECT_ID(N'fk_in_tbl_in_other_db') 

を置き換え、解決策を見つけることができました

WHERE name = N'fk_in_tbl_in_other_db' 


IF EXISTS (SELECT 1 FROM database2.sys.foreign_keys WHERE name = N'fk_in_tbl_in_other_db' AND parent_object_id = OBJECT_ID(N'database2.dbo.tableName')) 
BEGIN 
    ALTER TABLE database2.dbo.tableName DROP CONSTRAINT fk_in_tbl_in_other_db; 
END 
関連する問題