Ồ, tôi chắc chắn nhất sẽ làm như vậy! Những gì bạn phải nhớ là cơ sở dữ liệu của bạn là kho dữ liệu của bạn, nó không chỉ là lưu trữ dữ liệu cho giao diện người dùng. Đây là sự khác biệt tinh tế, nhưng điều quan trọng là khi bạn bắt đầu xem xét tương lai. Ngay bây giờ, bạn (có lẽ) sở hữu các ứng dụng quản lý, nhưng ai sẽ nói rằng trong tương lai, điều này vẫn sẽ xảy ra?
Bằng cách tắt quá trình xác thực khi bạn có thể vào cơ sở dữ liệu, bạn sẽ tương thích với ứng dụng của mình - ít nhất là nếu ai đó cố gắng phát triển dựa vào cơ sở dữ liệu của bạn, nhiều giả định của bạn sẽ giữ.
Những hạn chế của việc này ở phía cơ sở dữ liệu là chèn chậm hơn, vì vậy bạn cần phải cân nhắc mức độ nghiêm trọng của ứng dụng đối với việc đọc và viết. Tại nơi làm việc, chúng tôi có nhiều nhu cầu đọc hơn viết, vì vậy tính toàn vẹn tham chiếu có vẻ hiển nhiên. Tuy nhiên, các bảng của chúng ta lớn (và sẵn sàng để nhập), vì vậy chúng ta đi xuống một bước nhập nhiều bước để tạo các bảng, chèn dữ liệu, tạo các chỉ mục, và sau đó tạo các khóa ngoài và các ràng buộc khác.
Tôi hy vọng điều này sẽ hữu ích!
Hãy xem [** câu hỏi/câu trả lời tương tự **] (http://stackoverflow.com/questions/2819424/in-a-star-schema-are-foreign-key-constraints-between-facts -và kích thước-necce/2822941 # 2822941). –
Không chắc liệu tôi có nên thêm ở đây hay câu hỏi tương tự nhưng ... Nếu tính toàn vẹn là một vấn đề bạn luôn có thể đúng chức năng toàn vẹn hoặc các thủ tục được lưu trữ tìm kiếm sự kiện "mồ côi". (Hàng nơi các phím nước ngoài không có ý nghĩa). Sau đó, bạn có thể xóa sạch chúng sau/trong/trước chu kỳ tải tiếp theo trên cơ sở dữ liệu của bạn. – Markus
/right/write .... –