0

データベースに外部キーを追加するために複数のテーブル変更ステートメントを実行しようとしています

RazorSQL を使用しています

これは私のSQL文です

            ALTER TABLE SPO999.AVTVRSTEPLACILAPOD
        ADD CONSTRAINT SQL100419145030510 FOREIGN KEY
            (AVP_VRSTEPLACILA)
        REFERENCES SPO999.VRSTEPLACILA
            (VP_ID_VP)
        ON DELETE NO ACTION
        --ON UPDATE NO ACTION
        ENFORCED
        ENABLE QUERY OPTIMIZATION;

    -- DDL Statements for foreign keys on Table SPO999.AVTVRSTEPLACILAVRPL

    ALTER TABLE SPO999.AVTVRSTEPLACILAVRPL
        ADD CONSTRAINT SQL100419145030630 FOREIGN KEY
            (AVV_VRSTEPLACILA)
        REFERENCES SPO999.VRSTEPLACILA
            (VP_ID_VP)
        ON DELETE NO ACTION
        --ON UPDATE NO ACTION
        ENFORCED
        ENABLE QUERY OPTIMIZATION;

一度に 1 つずつ実行すると機能しますが、両方を実行しようとすると SQL エラー -104 a token,character or clause is invalid or missing が発生します。

問題/解決策が見つからない

助言がありますか?ありがとうございました

4

1 に答える 1

0

1つのトランザクション内で同じ列を参照するこれらの2つの外部キー定義を持つことはできない可能性が高いと思います。

commit;ステートメントの間に追加してみてください。

(SQLエディターは、その設定に応じて、commit実行するステートメントの各チャンクの後に自動的に送信する場合があります。これにより、2つのケースの違いが説明されます)。

于 2013-02-11T13:49:29.830 に答える