私はこのページだけでなく、stackoverflowやgoogleも探していました。これはよくある質問かもしれませんが、関連するものは何も見つからなかったためです...ここで正しい用語を使用していない可能性があります。
質問は非常に簡単です。
入れ子になった一意のキー(または主キーと一意のキーの組み合わせ)を別の一意のキー内に置くことは良い習慣ですか?
例:
列A、B、C、D、E、F、Gのテーブルがあります。プライマリまたは一意のキーは(A、B)で、一意のキーは(A、B、C)および(A、B、D)です。
これが一種のことであるかどうかは、一般的には良いことですが、mysqlについても知りたいです。
どうもありがとうございました
PRIMARY KEY
_が必要です。 MySQLでは、これはUNIQUEness
制約とインデックスの2つを意味します。UNIQUE
キーを含めることはめったにありません。 (注意:PRIMARY
はUNIQUE
としてカウントされます。INT
に「マッピング」する場合です。(a)
_を既に持っている場合、UNIQUE(a,b)
またはUNIQUE(b,a)
も持つ必要はありません。一方、それはmay一意でないINDEX(a,b)
および/またはINDEX(b,a)
を持つと便利です。 _(a)
_ impliesの一意性が他の2つの一意性をどのように考えるか。INDEX(a,b)
を使用する場合、INDEX(a)
も使用する理由は事実上ありません(注:この箇条書き項目ではUNIQUE
について話していません)。特定の質問に(おそらく間接的に)対処しなかった場合は、質問を言い換えてください。