Gần đây tôi đã biết về cách các mối quan hệ được xác định trong cơ sở dữ liệu tại nơi làm việc và tự hỏi liệu đây có phải là một thông lệ tiêu chuẩn.
Giả sử chúng ta có hai quy trình: Quy trình A và Quy trình B. Quy trình B phụ thuộc vào kết quả từ Quy trình A, do đó, có một mối quan hệ cần được xác định giữa quy trình B chạy và quy trình A. Đây là cách mối quan hệ được xác định:
TableProcessA:
Id
và
TableProcessB:
Id
ProcessAId
Bây giờ, cho đến thời điểm này, mọi thứ có ý nghĩa với tôi, nhưng sau đó mọi thứ trở nên hơi lạ đối với tôi và sự hiểu biết của tôi về thiết kế bảng. Bất cứ khi nào một hàng được tạo trong TableProcessA hoặc TableProcessB, một hàm được gọi sẽ tạo ra một id duy nhất toàn cầu cho mỗi. Về cơ bản, tất cả các trường Id trong TableProcessA và TableProcessB sẽ không chứa bất kỳ kết quả khớp nào vì Id không chỉ là duy nhất cho bảng của nó, mà cho toàn bộ cơ sở dữ liệu.
Câu hỏi của tôi là, tiêu chuẩn này như thế nào? Tôi đã đưa ra ý tưởng rằng mỗi bảng chỉ cần có một id tự động tăng tốc duy nhất chỉ cho bảng chứ không phải toàn bộ cơ sở dữ liệu.