亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

表命名困境:單數名與復數名

表命名困境:單數名與復數名

青春有我 2019-07-05 16:28:19
學術界認為,表名應該是它們存儲屬性的實體的單數。我不喜歡任何需要名稱方括號的T-SQL,但我已將其重命名為Users表格以單數表示,永遠使用表格的人有時不得不使用括號。我的直覺是,保留單數更正確,但我的直覺也是括號表示不受歡迎的名字,比如列名中有空格等等。我應該留下,還是該走?表命名困境:單數名與復數名
查看完整描述

3 回答

?
牧羊人nacy

TA貢獻1862條經驗 獲得超7個贊

學術界認為,表名應該是它們存儲屬性的實體的單數。

我不喜歡任何需要名稱方括號的T-SQL,但我已將其重命名為Users表格以單數表示,永遠使用表格的人有時不得不使用括號。

我的直覺是,保留單數更正確,但我的直覺也是括號表示不受歡迎的名字,比如列名中有空格等等。

我應該留下,還是該走?


查看完整回答
反對 回復 2019-07-05
?
臨摹微笑

TA貢獻1982條經驗 獲得超2個贊

我也有同樣的問題,在閱讀完這里的所有答案后,我肯定會說出單數的理由:

理由1(概念)。你可以想到包里裝著蘋果,比如“AppleBag”,不管是0,1,還是100萬個蘋果,它都是同一個袋子。表只是容器,表名必須描述它包含什么,而不是它包含多少數據。此外,復數概念更多地是關于口語的(實際上是確定是否有一個或多個)。

理由2..(方便)單數的名字比復數的要容易得多。對象可以有不規則的復數或根本沒有復數,但總是有一個單一的(除了少數例外,如新聞)。

  • 客戶
  • 命令
  • 用戶
  • 地位
  • 新聞

理由3..(審美和秩序)。特別是在主細節場景中,這樣讀起來更好,按名稱對齊更好,并且有更多的邏輯順序(主人第一,細節第二):

  • 1.訂單
  • 2.訂單

與之相比:

  • 1.訂單
  • 2.訂購

理由4(簡單)把所有的,表名,主鍵,關系,實體類.最好只知道一個名字(單數),而不是兩個(單數類、復數表、單數字段、單數復數主細節.)

  • Customer

  • Customer.CustomerID

  • CustomerAddress

  • public Class Customer {...}

  • SELECT FROM Customer WHERE CustomerID = 100

一旦您知道您正在處理的是“客戶”,您就可以確定您將使用相同的詞來滿足您的所有數據庫交互需求。

理由5..(全球化)。世界正在變小,你可能有一個不同國籍的團隊,并不是每個人都有英語作為母語。對于一個非母語的英語程序員來說,想到“Repository”要比“Repository”或“Status”而不是“Status”更容易。使用單數名稱可以減少由排字引起的錯誤,通過不必想“是孩子還是孩子?”來節省時間,從而提高了生產率。

理由6..(為什么不呢?)它甚至可以節省您的書寫時間,節省您的磁盤空間,甚至使您的計算機鍵盤持續更長時間!

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

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

您保存了3個字母、3個字節、3個額外的鍵盤點擊:)

最后,您可以將那些與保留名稱混淆的名稱命名為:

  • 用戶>登錄用戶,AppUser,SystemUser,CMSUser,.

或者使用臭名昭著的方括號[用戶]


查看完整回答
反對 回復 2019-07-05
  • 3 回答
  • 0 關注
  • 744 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號