1. ホーム
  2. algorithm

[解決済み] 主キーはいかがですか?[クローズド]

2023-03-02 17:21:24

質問

私のチームでのかなり活発な議論で、私は、ほとんどの人が主キーとして何を好むかを考えさせられました。私たちは次のようなグループに分かれました。

  1. 自動インクリメントの Int/ BigInt は、十分に良い主キーです。
  2. 主キーを構成するカラムは最低3つ必要です。
  3. Id、GUID、人間が読める行の識別子はすべて異なって扱われるべきです。

PKのための最良のアプローチは何でしょうか?あなたの意見を正当化できるとしたら、それは素晴らしいことです。上記のような良いアプローチがあるのでしょうか?

EDIT: どなたか、行のための人間が読める識別子を生成する簡単なサンプル/アルゴリズムを持っていて、それがうまくスケールしますか?

どのように解決するのですか?

時々接続されるアプリケーションでデータベース間の同期を行う場合、主キーに GUID を使用する必要があります。 デバッグが面倒なので、その場合を除いて、私はオートインクリメントの int 型に固執する傾向があります。

オートインクリメントのint型はデフォルトであるべきで、そして ではなく を使用することは正当化されるべきです。