0

id、external_id、country_code 列を持つテーブルがあります。データベースに課したいルールが 2 つあります。

  • 各外部 ID は、国コードごとに 1 回だけ表示できます
  • 各 ID は、null 以外の外部 ID を最大で 1 つだけ表示できます。その逆も同様です。

最初のルールは簡単です。一意の複数列インデックスを external_id と country_code に追加します。2番目を課すにはどうすればよいですか?

4

2 に答える 2

1

2番目の制約を正確に理解しているかどうかはわかりませんが、この場合、 INSERT および UPDATE イベントに関連付けられたトリガーが問題を解決するようです。

于 2010-10-14T10:52:16.750 に答える
0

externalid は単一の id にしかリンクできないと言っている場合、externalid にも一意のインデックスが必要であるように思えます。

于 2010-10-14T12:44:10.693 に答える