Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Thế tiến thoái lưỡng nan về đặt tên bảng:Tên số ít so với số nhiều

Tôi đã có cùng một câu hỏi, và sau khi đọc tất cả các câu trả lời ở đây, tôi chắc chắn ở lại với SINGULAR, lý do:

Lý do 1 (Ý tưởng). Bạn có thể nghĩ về chiếc túi đựng táo giống như "AppleBag", không quan trọng nếu chứa 0, 1 hay một triệu quả táo, nó luôn là một chiếc túi giống nhau. Các bảng chỉ có vậy, các thùng chứa, tên bảng phải mô tả nó chứa cái gì chứ không phải nó chứa bao nhiêu dữ liệu. Ngoài ra, khái niệm số nhiều thiên về ngôn ngữ nói (thực ra là để xác định xem có một hay nhiều hay không).

Lý do 2 . (Tiện). nó dễ dàng hơn với những cái tên số ít, hơn là những cái tên số nhiều. Các đối tượng có thể có số nhiều bất quy tắc hoặc hoàn toàn không có số nhiều, nhưng sẽ luôn có số ít (với một vài trường hợp ngoại lệ như Tin tức).

  • Khách hàng
  • Đặt hàng
  • Người dùng
  • Trạng thái
  • Tin tức

Lý do 3 . (Thẩm mỹ và Trật tự). Đặc biệt trong các tình huống chi tiết chính, điều này đọc tốt hơn, sắp xếp tốt hơn theo tên và có thứ tự hợp lý hơn (Bản chính đầu tiên, Chi tiết thứ hai):

  • 1. Đặt hàng
  • 2.OrderDetail

So với:

  • 1.OrderDetails
  • 2. Đơn đặt hàng

Lý do 4 (Sự đơn giản). Đặt tất cả lại với nhau, Tên bảng, Khóa chính, Mối quan hệ, Lớp thực thể ... tốt hơn là chỉ biết một tên (số ít) thay vì hai (lớp số ít, bảng số nhiều, trường số ít, chủ-chi tiết số ít .. .)

  • Customer
  • Customer.CustomerID
  • CustomerAddress
  • public Class Customer {...}
  • SELECT FROM Customer WHERE CustomerID = 100

Khi bạn biết mình đang giao dịch với "Khách hàng", bạn có thể chắc chắn rằng mình sẽ sử dụng cùng một từ cho tất cả các nhu cầu tương tác với cơ sở dữ liệu của mình.

Lý do 5 . (Toàn cầu hóa). Thế giới ngày càng thu hẹp, bạn có thể có một nhóm các quốc tịch khác nhau, không phải ai cũng có tiếng Anh như ngôn ngữ mẹ đẻ. Sẽ dễ dàng hơn cho một lập trình viên tiếng Anh không phải là tiếng mẹ đẻ nghĩ về "Kho lưu trữ" hơn là "Kho lưu trữ", hoặc "Trạng thái" thay vì "Trạng thái". Đặt tên số ít có thể dẫn đến ít lỗi do chính tả hơn, tiết kiệm thời gian do không phải nghĩ "đó là Trẻ em hay Trẻ em?", Do đó cải thiện năng suất.

Lý do 6 . (Tại sao không?). Nó thậm chí có thể giúp bạn tiết kiệm thời gian viết, tiết kiệm dung lượng ổ đĩa và thậm chí làm cho bàn phím máy tính của bạn bền hơn!

  • SELECT Customer.CustomerName FROM Customer WHERE Customer.CustomerID = 100
  • SELECT Customers.CustomerName FROM Customers WHERE Customers.CustomerID = 103

Bạn đã lưu 3 chữ cái, 3 byte, thêm 3 lần nhấn bàn phím :)

Và cuối cùng, bạn có thể đặt tên những cái đó lộn xộn với những cái tên dành riêng như:

  • Người dùng> Người dùng đăng nhập, Người dùng ứng dụng, Người dùng hệ thống, Người dùng CMS, ...

Hoặc sử dụng dấu ngoặc vuông khét tiếng [Người dùng]



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thủ tục mong đợi tham số không được cung cấp

  2. Làm thế nào để tạo ra một phạm vi số giữa hai số?

  3. TSQL Pivot không có chức năng tổng hợp

  4. Cơ sở dữ liệu + Xác thực Windows + Tên người dùng / Mật khẩu?

  5. @@ IDENTITY, SCOPE_IDENTITY (), OUTPUT và các phương pháp truy xuất danh tính cuối cùng khác