何百万もの行があり、フィールドユーザー名(varchar)があるユーザーテーブルがあります。一意のインデックスではなくプライマリキーにする必要がありますか?余分なフィールドuser_id(int)を追加してプライマリキーにする利点と欠点は何ですか?私は、どこで私がuser_idを使用するのか分からないのですが、intの結合がvarcharの結合より速いという結合条件について言う以外は?またはそれですか?(両方のフィールドがインデックスに登録されているため)データベースプライマリキー
update:変更するユーザー名はオプションではありません。
ユーザは自分のユーザ名を変更できますか? VARCHARはどのくらいの期間ですか? INTEGERに基づくルックアップは、後者がより長いキー長を持つ場合、VARCHARのルックアップより高速です。 – Rob
いいえ私はそれらのユーザー名を変更しないようにします – user157195
あなたは絶対に、それは決して必要となることはないと確信していますか?私は未来を予測することができたらいいと思っています... – Rob