Naming-Convention
我應該使用列命名約定還是依賴列描述?
坦率地說,我很驚訝在一些基本的(非常基本的)網際網路搜尋之後,我無法找到一個全面的命名約定或指南或 SQL 對象和列命名。
我習慣的類似情況是在 .NET 開發世界中,那裡有許多提供的約定,微軟甚至記錄了一套被廣泛採用的綜合建議:
1. 數據庫對象、列等命名是否有一個被廣泛採用的標準?
**2. 依賴Description 屬性來描述表的列有什麼陷阱嗎?**顯然,人們希望名稱能夠揭示意圖,但這有時在數據庫中很難做到,而且描述對於了解數據庫的人來說可能是無價的(儘管他們也可能撒謊)。
非常感謝幫助!
- 選擇一個標準,確保它有意義,並記錄下來。對此有很多爭論(例如,聯繫人表中的身份列是否應該稱為 ID 或 ContactID,或者聯繫人表是否應該稱為 dbo.Contacts 或不必要的冗長 dbo.tblContacts),而您永遠不會會在你的同齡人之間找到共識。你選擇哪個標準並不重要;重要的是你始終如一地使用它,讓它廣為人知,並讓你的同事同意這是這種方式。
- 在可行的情況下,您的專欄應該是自我記錄的(而不是神秘的、縮寫的或混淆的)。我不會依賴擴展屬性,但這只是我(google/bing 用於擴展屬性的問題,我猜你會看到很多抱怨)。外部文件/數據字典對我來說更有價值——如果你的數據庫南下,你的備份也一樣,它會使重建變得容易得多。它還可以更輕鬆地向初級開發人員等描述您的架構,而無需讓他們直接訪問所有內容。