要開始我有兩個表,PersonNames
和PersonNameVariations
。搜索名稱時,它會找到與PersonNames
中可用的名稱最接近的名稱,並將其記錄在PersonNameVariations
表中(如果它尚未存在)。在視圖中使用時,是否可以創建不可爲空的列? (sql server)
我使用一個存儲過程來搜索PersonNames
在PersonNameVariation
一個傳遞和返回上發現的PersonName
和比較它的PersonNameVariation
雙方的信息。
由於我使用的是實體框架,我需要在Import Function
中返回一個複雜類型,但由於某種原因它說我目前的框架不支持它。我最後的選擇是使用Entity
來替代我的存儲過程。
我需要的結果是找到的PersonName
和記錄的PersonNameVariation
上的信息。由於我無法返回兩個實體,因此我創建了一個視圖PersonSearchVariationInfo
並將其添加到我的實體框架中,以便將其用作要返回的實體。
問題是,搜索將不會總是返回一個Person Name
匹配。在某些情況下,它需要只能返回PersonNameVariation
數據,這意味着PersonSearchVariationInfo
中與PersonName
有關的所有字段需要爲空,即。
我該如何看待自己的觀點並將其中的某些欄位設爲空?當我在實體框架直接做,我得到一個映射錯誤:
Error 4 Error 3031: Problem in mapping fragments starting at line 1202:Non-nullable column myproject_vw_PersonSearchVariationInfo.DateAdded in table myproject_vw_PersonSearchVariationInfo is mapped to a nullable entity property. C:\Users\Administrator\Documents\Visual Studio 2010\Projects\MyProject\MyProject.Domain\EntityFramework\MyProjectDBEntities.edmx 1203 15 MyProject.Domain
人有什麼想法?
謝謝
馬特
庵爲空性是正確的。幾天前,gbn給了你一個很棒的回答。它是否適用於你?如果沒有,爲什麼不呢?如果有,請接受他的回答。 – MaasSql 2010-06-26 22:54:34
我必須檢查我做了什麼。我想出來後忘了更新這個問題。他的回答沒有直接說明我的情況,但我可能不清楚我需要什麼。當我有機會嘗試澄清我所需要的東西時,我會寫點東西。 – Matt 2010-06-29 21:58:42