これとこれを読んでからこれを読んで(皮肉なことに他の2つを参照しています)、このトピックの議論がどれほど大きいのか疑問に思いますか?私はSQLServerの担当者なので、intの形式で自動生成されるIDを使用する傾向があります。ただし、サーバーとサーバー間の何らかの形式のレプリケーション、またはクライアントとサーバー間の同期が必要になることがわかっている場合は、GUIDをキーとして使用する傾向があります。
質問: 将来この可能性のあるスケーラビリティが必要になる可能性がある場合に備えて、すべてのテーブルで常にGUIDを主キーとして使用する必要がありますか?これにより、スキーマをプラットフォーム間でいつでも移行できるという点で、スキーマがより柔軟になりますか?これは、プラットフォーム固有の機能を埋め込まないことで、(フレーバーに関係なく)ORMの柔軟性を維持するのに役立ちますか?
反応:
@David Archer:あなたのコメントに従って、「自然キー」と言わないように投稿を更新しました。自然キーがそのように定義されているという点で、あなたは正しいです。訂正していただきありがとうございます。