2010-09-11 36 views
9

Quy ước đặt tên phổ biến nhất cho các bảng Cơ sở dữ liệu SQL là gì? Có phải lịch sử là một cách và bây giờ tốt hơn là nên làm theo cách khác? Các phương pháp phổ biến nhất hiện nay là gì?Tên bảng cơ sở dữ liệu: Số nhiều hoặc số ít

+3

Đây là câu hỏi thăm dò ý kiến ​​và có lẽ nên là CW. –

+0

rất nhiều cuộc tranh luận về điều này! –

+0

Điều này tùy thuộc vào ngôn ngữ bạn sử dụng để đặt tên cho các bảng của mình. – Quassnoi

Trả lời

11

Tôi luôn sử dụng số nhiều cho tên bảng và số ít cho tên cột. Không phải là có bất kỳ lý do kỹ thuật thực sự nào cho nó, đó chỉ là những gì tôi thích.

Không quan trọng lắm, miễn là bạn nhất quán.

I.e.

 
+========+  +==========+ 
| Posts |  | Users | 
+--------+  +----------+ 
| idPost | |-> | idUser | 
| Poster | <-| | Name  | 
+========+  +==========+ 

lập luận của tôi cho đây là những gì sẽ xảy ra khi bạn viết truy vấn thực tế:

SELECT idPost, Name FROM Posts 
INNER JOIN Users ON Poster = idUser 

Nếu bạn sử dụng ít, có vẻ như bạn đang chọn từ một bài đăng, chứ không phải từ bộ tất cả các bài đăng và tham gia vào một người dùng duy nhất, thay vì tất cả người dùng.

+1

Nó chỉ "trông như vậy" nếu bạn có điều kiện để xem nó theo cách đó. Nếu bạn sử dụng số ít trong một thời gian, nó sẽ không trông buồn cười nữa. Đó là cách của mọi thứ. – ErikE

+2

@Emtucifor: Tôi tin rằng đó là điểm "Không quan trọng, miễn là bạn nhất quán". Đó là những gì có ý nghĩa nhất đối với tôi, vì vậy đó là những gì tôi sử dụng. Nếu bạn thích số ít hơn, hãy sử dụng nó. Nhưng đừng trộn n 'match. –

+1

Tôi làm số ít vì một ORM chuyển đổi thành các đối tượng Singular, còn bảng giữ một bản ghi mặc dù có nhiều bản ghi, điều gì xảy ra và các cuộc tranh luận xảy ra với "Party" hoặc "Parties" hoặc "Partys". Trong kịch bản xây dựng kịch bản, số ít luôn luôn là con đường dễ nhất với những điểm này. – SnapJag

10

Không - số ít đối với tôi. Đó là bảng "USER".

+0

Chỉ có lý do tôi không thích điều này là bạn làm điều gì đó như "SELECT Name FROM User" - có vẻ như bạn đang chọn một tên chứ không phải tất cả chúng. Nhưng 1 cho một câu trả lời tốt. –

+0

Không, nhiều hàng có thể quay lại. Nhưng tôi rất vui vì bạn thích nó. Cảm ơn, Billy. – duffymo

+0

@duffymo: Nhiều phiên bản của "Người dùng". Đối tượng trong bảng là "Người dùng". –

1

Mẫu chuẩn cho LINQ to SQL (và EF, có lẽ), Ruby/Rails, v.v. - đó là các khuôn khổ chọn quy ước trên cấu hình - là sử dụng tên bảng số nhiều.

8

số nhiều cho tên bảng - vì bảng lưu trữ người dùng, sản phẩm, mục và v.v. tên số ít cho các mô hình vì chúng là một mục duy nhất - Người dùng, Sản phẩm, Mục. cho các trường bảng tôi tuân theo quy ước đặt tên mysql - user_id, product_price, item_count.

Sử dụng bất kỳ cách nào trong số họ, nhưng sử dụng nhất quán - sau cùng thì đó sẽ là câu trả lời của tôi.

0

Tôi thường đặt tên bảng tùy thuộc vào cách tôi trực quan liên quan đến nó.

+4

Tôi xin lỗi, nhưng 110% không đồng ý ở đây. Không có gì tệ hơn là làm việc trên một đoạn mã và phải ngừng đào tạo suy nghĩ của bạn để tra cứu cách bảng được đặt tên trong lược đồ. –

+0

vâng, điểm tốt .... có thể id bắt đầu với điều đó trên def bảng đầu tiên, và sau đó dính vào quy ước đó (s hoặc pl) – CheeseConQueso

Các vấn đề liên quan