複合キーまたは一意の新しいキー
-
18-09-2019 - |
質問
私は最高になるかを知りたいです。 私はテーブルを持っています、col2が(外国keyfk2である)を有するCOL1は、(外部キーFK1である)と言います。 私は(COL1、COL2)、または新しく生成されたPKとPKを使用することができます。 クエリは、加入中の基準とFK2でFK1を持つことになります。 親切に私に最適なものを提案します。
P.S私はMySQLを使用しています。
解決
これは、多対多のリンクテーブルである場合は、
、ちょうど(col1, col2)
としてPK
を使用します。
MySQL
での外部キーは、索引構成であるInnoDB
を意味するものでは、これはテーブル自体がPRIMARY KEY
になり、それはレコードが発注されるということを意味します。
col2
を検索し、参加するにcol1
を使用しようとしている場合は、、あなたは(col2)
に追加のセカンダリインデックスを作成する必要があります。このインデックスは、暗黙のうちに、したがって、実際にはPRIMARY KEY
になり、インデックスなり、レコードポインタとして(col2, col1, col2)
値を含む、およびされます。
他のヒント
他の人が言ったように - これはPKとしてリンクテーブル、使用COL1、COL2である場合。一方で、この表はまた、それ自身のの新しいキーを作成するためにリンクすることができます。あなたはまた、COL1、COL2ペアに一意制約を置くことができます。
所属していません StackOverflow