0

サポートしているさまざまな顧客が実行するスクリプトの一部で外部キーが追加されますが、スクリプトのこの部分を実行するときに外部キーの 1 つを追加したくありません。以下のコードから FK6 を削除するにはどうすればよいですか。以下の外部キー FK6 で DROP を試みましたが、構文エラーが発生します。

IF OBJECT_ID('FK2') IS NULL
BEGIN
ALTER TABLE [table_1] ADD
  CONSTRAINT [FK2] FOREIGN KEY
  (
     [reason_gen]
  ) REFERENCES [table_1] (
     [field_1]
  ) NOT FOR REPLICATION,
  CONSTRAINT [FK3] FOREIGN KEY
  (
     [field_2],
     [field_3]
  ) REFERENCES [table_2] (
     [field_4],
     [field_5]
  ) NOT FOR REPLICATION,
  CONSTRAINT [FK4] FOREIGN KEY
  (
     [res_code_gen]
  ) REFERENCES [table_3] (
     [field_6]
  ) NOT FOR REPLICATION,
  CONSTRAINT [FK5] FOREIGN KEY
  (
     [field_7],
     [field_8]
  ) REFERENCES [table_4] (
     [field_7],
     [field_8]
  ) NOT FOR REPLICATION,

 ALTER TABLE [table_1] DROP
 CONSTRAINT [FK6] FOREIGN KEY
  (
     [field_9]
  ) REFERENCES [ftable_5] (
     [field_10]
  ) NOT FOR REPLICATION
END
4

2 に答える 2

1

外部キーを削除するための構文は次のとおりです。

ALTER TABLE [table_1] DROP CONSTRAINT [FK6] 
于 2013-07-02T18:17:22.260 に答える
0

これはどのデータベースですか? オラクル、MYSQL、SQL サーバー?

Oracle の場合、構文は次のとおりです。

ALTER TABLE table_name
drop CONSTRAINT constraint_name;
于 2013-07-02T18:18:34.217 に答える