Nó có quan trọng cho cơ sở dữ liệu để có một bảng / sơ đồ mối quan hệ hay không? [đóng cửa]


7

Có một câu hỏi và muốn có được những thực tiễn hay suy nghĩ tốt nhất về điều này.

Tôi có một ứng dụng được phát triển với phần cuối SQL Server (trang web là Entity framework, vb.net, asp.net). Thiết kế ban đầu không có bảng sơ đồ / lược đồ / mối quan hệ cơ sở dữ liệu trong chính db.

Trang web hoạt động tuyệt vời nhưng đã nhận được một số phản hồi từ một nhóm khác nói rằng nó phải có một bảng mối quan hệ để hoạt động đúng.

Vậy đây là sở thích cá nhân hay sao? Tôi không phải là một chuyên gia về DB và đang cố gắng tìm hiểu xem đó có phải là hai cách phát triển hay không và ai đó đang cố gắng thúc đẩy sở thích cá nhân hơn các tiêu chuẩn hoặc thực tiễn tốt nhất.


2
"Thiết kế ban đầu không có sơ đồ cơ sở dữ liệu / lược đồ / bảng mối quan hệ" - Tôi không hiểu làm thế nào để mở rộng nó thành các câu có ý nghĩa. Có lẽ các từ "sơ đồ" và "bảng" nên được hoán đổi xung quanh? Ngoài ra, tầm quan trọng của vòng loại "trong chính db" là gì?
ngày

Câu trả lời:


6

Bạn không cần một sơ đồ để nó hoạt động, bạn cần một sơ đồ để đào tạo các nhà phát triển trong tương lai!

Tuy nhiên, nếu những gì bạn thực sự có là một cơ sở dữ liệu không có mối quan hệ PK / FK chính thức nào được thiết lập (Bạn có thể làm gì khi tạo sơ đồ cũng như thông qua các cách tốt hơn như tập lệnh SQL), thì đó là một câu chuyện khác. Đó là một cái gì đó cuối cùng sẽ khiến dữ liệu của bạn không nhất quán và thực sự là một vấn đề thực sự đối với những người dùng khác của cơ sở dữ liệu.


3

Nếu đó là một thiết kế dữ liệu hoàn toàn hướng đối tượng, bạn thực sự không thể truy vấn nó ngoại trừ thông qua mã ứng dụng. Vì vậy, không, tôi sẽ không yêu cầu một sơ đồ dữ liệu sẽ không làm tôi tốt, không. Tôi nghĩ rằng âm thanh giống như ai đó đẩy sở thích lên trên các tiêu chuẩn (và điều đó đến từ mọt sách DBA định hướng tiêu chuẩn khá cam kết).


3

Nó chắc chắn không cần thiết cho bất kỳ lý do chức năng, nhưng đó không phải là ý tưởng tồi cho một số tài liệu nhanh và bẩn. Có vẻ như họ đang nhầm lẫn nó với nhà thiết kế mối quan hệ Access, đó là nơi bạn thực sự khai báo các khóa ngoại của mình. Trình thiết kế sơ đồ cơ sở dữ liệu SQL Server trông tương tự, nhưng có mục đích hoàn toàn khác (tài liệu hơn là DDL).


Bạn nói đúng, nó chủ yếu được thúc đẩy cho mục đích tài liệu. Ứng dụng hiện tại chạy rất tốt mà không có ứng dụng này được tích hợp ngay bây giờ.
Valien

2

Tôi khuyên bạn nên có một từ điển dữ liệu và sơ đồ ER cho các bảng miền doanh nghiệp ít nhất. Mặc dù có một số bảng asp_ do hệ thống tạo ra được ghi lại tốt và có thể không liên quan đến logic nghiệp vụ, nhưng bất kỳ thứ gì được tạo ra bên ngoài này đều phải được ghi lại rõ ràng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.