Tên bảng tốt nhất thay vì người dùng trên mạng, nếu DB không thích [đóng]


8

Vâng, tôi biết, có thể trích dẫn tên của bảng, nhưng đôi khi nó không đúng.

Nếu không có lựa chọn nào khác, tôi đặt tên bảng này là "người dùng", mặc dù số nhiều không cần thiết về mặt ngữ nghĩa này làm cho mọi thứ hơi không nhất quán.

Những giải pháp thay thế nào tồn tại?


2
Tôi thích đặt tên các bảng của mình ở số nhiều nếu chúng được cho là chứa nhiều hơn một "thứ".
Colin 't Hart

Chiến tranh tôn giáo. Một túi cho táo vẫn là "túi táo" chứ không phải là "túi táo"! Bạn có thể có một nhà máy điện hạt nhân với một hệ thống CNTT với một bảng có tên là Catastrophic_Meltdown - một bảng trong đó hy vọng bạn sẽ không bao giờ muốn có bất kỳ hồ sơ nào cả!
Vérace

Tôi ủng hộ tên đặc biệt cho các bảng nhưng sử dụng tên số nhiều có một lợi thế: chúng ta có thể sử dụng Groups, Users, Orders, Plans, Likes, Keys, vv (mà tiếc là chúng tôi không thể nếu chúng ta dính vào duy nhất.)
ypercubeᵀᴹ

1
@ Vérace đó sẽ là AppleBagItems và CatastrophicMeltdownEvents. Tôi thấy nó luôn luôn có thể sử dụng tên số nhiều.
usr

Tôi ủng hộ danh từ tập thể cho tên bảng. Bảng Khách hàng mô hình một tập hợp các thực thể khách hàng. Bảng Nhân sự là một tập hợp các thực thể nhân viên. "Người dùng" có vẻ quá chung chung, tuy nhiên. Thực thể nào là bảng này thực sự mô hình hóa?
Greenstone Walker

Câu trả lời:


1

Tôi thường sử dụng các từ không phải tiếng Anh, đối với tôi usaideoir (tiếng Ailen) hoặc tiếng Pháp (tiếng Pháp). Pehaps cho bạn, benutzer (tiếng Đức), felhasznalo (tiếng Hungary) hay korisnik (tiếng Croatia)? Điểm nhấn đã được loại bỏ. Tôi biết nó thêm vào việc gõ, nhưng nó có thể tiết kiệm thời gian khi bạn muốn chuyển sang một db mới - không có dấu ngoặc kép. Dù sao, trích dẫn định danh là một nguồn lỗi khét tiếng.

Các bảng (cũng là các cột) thường có thể có một nhận xét liên quan đến chúng, có thể được sử dụng để chỉ ra bất kỳ sự khởi hành nào từ một tiêu chuẩn (ví dụ trong trường hợp này là ngôn ngữ tiếng Anh!).


Đây có thể là một vấn đề khi làm việc với các nhà phát triển không biết gì về Ailen / Pháp / Đức / Hunrarian / Croation. Người Ailen và Pháp tôi có thể đoán được, nhưng người Croatia tôi không bao giờ đoán được đó chỉ là gì khi nhìn vào cái tên.
Thất vọngWithFormsDesigner

1
Sự hài lòng lớn cho công nghệ ước tính ngôn ngữ của bạn! :-)
peterh - Tái lập lại

@FrustratedWithFormsDesigner - COMMENT ON TABLE ... đánh bại các lỗi với "Tên trường không xác định: Người dùng" (trường kiểm tra lãng phí thời gian tồn tại ...). Peter - Cảm ơn!
Vérace

yeah điều này chắc chắn sẽ không gây nhầm lẫn cho bất cứ ai.
niico

Các bảng (cũng là các cột) thường có thể có một nhận xét liên quan đến chúng, có thể được sử dụng để chỉ ra bất kỳ sự khởi hành nào từ một tiêu chuẩn (ví dụ trong trường hợp này là ngôn ngữ tiếng Anh!).
Vérace

3

Đặt một số bối cảnh trong tên. Nếu bảng dành cho CMS, có thể đặt tên cho bảng CMS_USER. Nếu đó là một công cụ báo cáo , REPORT_USER. Bạn có thể bao gồm tên ứng dụng trong đó, như ${applicationName}_USER. Không có những thứ đó, sẽ APPLICATION_USERổn chứ? Tôi đã từng thấy một bảng có tên UZER, theo truyền thống đặt tên một biến đại diện cho một lớp là clazz, nhưng tôi không quá thích cái bảng đó. Bạn có thể làm một cái gì đó như U5ER, vì loại "5" trông giống như "S". Hoặc bạn chỉ có thể đi hoàn toàn ngữ âm và đặt tên cho bảng như thế nào YOOZER.


2

Đối với tên bảng, bạn có thể tiền tố các bảng của mình bằng t, tbl, v.v.

CREATE TABLE schema.tuser

Cá nhân, tôi thích làm cho các bảng của mình ở dạng số nhiều, như thể đó là một bảng người dùng , thay vì một bảng người dùng .

CREATE TABLE schema.users

Nếu bạn không thích một trong các tùy chọn đó, bạn luôn có thể mô tả nhiều hơn khi tạo bảng. Họ là loại người dùng nào? Cơ sở dữ liệu để làm gì?

CREATE TABLE schema.appusers
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.