2013-02-14 22 views
2

我想首先使用實體​​框架數據庫做一個大型數據庫的報表網站的快速原型。問題是其中一個表沒有密鑰。我得到了'錯誤159:EntityType沒有定義鍵'。如果我在模型設計器上添加一個鍵,我得到'錯誤3024:必須指定所有關鍵屬性的映射'。我的問題是,是否有辦法解決這個問題,而不是添加一個鍵到表。該表不在我們的控制之下。EF數據庫第一個和沒有鍵的表

回答

2

巨大的桌子沒有鑰匙?如果沒有使用全表掃描,您或桌子所有者無法在此表中搜索任何內容。另外,基本上不可能使用沒有主鍵的單行更新。

您確實必須創建合成密鑰,或要求所有者這樣做。作爲一種解決方法,您可能能夠找到一些現有的專欄(或2-3列),這些專欄足夠獨特,可用作唯一密鑰。如果它是唯一的,但沒有創建實際的索引,那對性能來說仍然不好 - 你應該創建這樣的索引。