2

我正在設計一個大型數據庫,用戶將在這裏生成和存儲文檔。它是一個CMS有點東西。「doc」是SQL 2008還是C#或Entity Framework的保留關鍵字?

我創建的表稱爲「Doc」,然後我有一個「DocAssets」關係,用於跟蹤Doc中的所有內容。

Doc表格有一個DocID ofcause。

但是,當我轉到實體框架模型設計器並從數據庫中檢索表時,我沒有看到「Doc​​」作爲要添加的表。

如果我將Doc重命名爲,可以說爲測試目的使用MDoc。從數據庫更新時,該表很好地顯示出來。如果我將它重命名爲Doc,它將從表格​​列表中消失。

現在,如果它是一個保留字,我會找出其他命名策略的其他名稱,但是 - 是我嗎?它是一個錯誤還是保留字?

回答

4

Nope這不是保留字。

「更聰明的問題」應該是:what would cause a table not to show up?。現在你已經假設它是由它的名字引起的,並暗示保留字。這可能會讓人試圖幫助你,但也可能讓你自己走上錯誤的軌道。

而且,我可以補充一下,不要揉搓它,當然你可以很容易地自己回答'保留字問題'。在SO上發佈問題實際上比在Google中點擊「sql server reserved words」並點擊「我感覺幸運」或第一次點擊更多的工作。

+0

你有什麼想法可能會導致這種行爲呢? – BerggreenDK 2012-07-19 19:52:47

+0

在C#中未保留:http://msdn.microsoft.com/en-us/library/x53a06bb(v=vs.71).aspx – David 2012-07-19 19:53:04

+0

@BerggreenDK那麼,EF是今天[開源](http ://www.hanselman.com/blog/EntityFrameworkMagicUnicornAndMuchMoreIsNowOpenSourceWithTakeBacks.aspx)。所以潛入並找出答案。並讓我們知道;-) – RobIII 2012-07-19 19:53:49

相關問題