2017-01-31 42 views
0

私はALTER TABLE文を使用して自己参照制約を作成できるかどうかを知りたいです。ALTER TABLE文がFOREIGN KEY SAME TABLE制約と競合しました

ALTER TABLE myTable 
ADD CONSTRAINT FK_myTablemyTable 
FOREIGN KEY (parent_Id) 
REFERENCES myTable(Id) 

が、私はちょうど得る:私はちょうど主キーは、私はこのような何かをしたい、PARENT_ID

と呼ばれるIDとカラムと呼ばを持つテーブルがあると予想(TSQL SQL Server 2012の)

エラー:FOREIGN KEY同じテーブル制約

と競合

ALTER TABLE文の文WOを取得するための代替方法はありますrking、またはこの場合はテーブル全体を再作成する必要がありますか?

ホープ誰かが

乾杯

+2

を働いて

が鳴ります。 –

+0

問題を指摘していただきありがとうございます。私は何らかの種類のテーブル移行ツールを作成していて、データがすでに挿入されていることに気付いていませんでした... ルート要素がparent_id = 0で挿入され、nullではないという問題がありました。 –

答えて

0

問題が

...私はテーブル移行ツールのいくつかの種類を作成していますし、既にデータが挿入されたことに気づいていない

を解く手助けすることができます

問題は、ルート要素がparent_id = 0で、nullではないことが挿入されていたことです...

したがって間違いはありません。 n SQL文。あなたはId列に同じ値に対応する行を持っていませんPARENT_IDための少なくとも行の値を持っているように、今では

関連する問題