最近、職場でデータベースでリレーションシップがどのように定義されるかを知り、これが標準的な方法であるかどうか疑問に思いました。
プロセスAとプロセスBの2つのプロセスがあるとします。プロセスBはプロセスAの結果に依存するため、プロセスBの実行とプロセスAの実行の間に定義する必要がある関係があります。これが関係の定義方法です。
TableProcessA:
Id
そして
TableProcessB:
Id
ProcessAId
さて、これまでのところ、私には物事は理にかなっていますが、それから、私とテーブルのデザインに対する私の理解が少し奇妙になっています。TableProcessAまたはTableProcessBで行が作成されるたびに、それぞれに対してグローバルに一意のIDを作成する関数が呼び出されます。そのため、基本的に、Idはテーブルだけでなくデータベース全体に対しても一意であるため、TableProcessAおよびTableProcessBのすべてのIdフィールドには一致が含まれません。
私の質問は、これはどのくらい標準的ですか?各テーブルには、データベース全体ではなく、テーブルに固有の自動インクリメントIDが必要であるという考えに思いつきました。