GUIDまたはIDについて1日中議論できます。私はデータベースがアイデンティティを持つ一意の値を生成することを好みます。複数のデータベースのデータをマージする場合は、別の列を追加して(ソースデータベースを識別するために、場合によってはtinyintまたはsmallint)、複合主キーを形成します。
IDを使用する場合は、生成する予想されるキーの数に基づいて、適切なデータ型を選択してください。
bigint - 8 Bytes - max positive value: 9,223,372,036,854,775,807
int - 4 Bytes - max positive value: 2,147,483,647
「予想されるキーの数」は行の数とは異なることに注意してください。主に行を追加して保持する場合、20億を超える一意のキーでINTで十分であることがわかる場合があります。あなたのテーブルはそれほど大きくならないでしょう。ただし、行の追加と削除を続ける大量のテーブルがある場合は、行数が少なくなる可能性がありますが、キーをすばやく処理できます。INT 20億のキーを通過するのにどのようにログが必要かを確認するには、いくつかの計算を行う必要があります。すぐに使い果たされない場合はINTを使用し、そうでない場合はキーサイズを2倍にしてBIGINTを使用します。