Sql server 将实体框架的主键添加到基于表的视图中的现有列中,其中每个列都允许为Null
有很多问题问这个,但我似乎找不到一个具体的解决办法 我有一个第三方数据库,其中每个字段都设置为允许null。其中一列(“代码”)是唯一的字符串ID,并且是不同的 使用EntityFramework,我想通过告诉EF将列“Code”作为主键来添加这个表 我已经创建了一个视图,但我不确定从这里到哪里去 我见过一些解决方案,包括添加一个额外的行号作为主键,但如果可能的话,我更喜欢使用“代码”Sql server 将实体框架的主键添加到基于表的视图中的现有列中,其中每个列都允许为Null,sql-server,entity-framework,sql-server-2008-r2,entity-framework-6,Sql Server,Entity Framework,Sql Server 2008 R2,Entity Framework 6,有很多问题问这个,但我似乎找不到一个具体的解决办法 我有一个第三方数据库,其中每个字段都设置为允许null。其中一列(“代码”)是唯一的字符串ID,并且是不同的 使用EntityFramework,我想通过告诉EF将列“Code”作为主键来添加这个表 我已经创建了一个视图,但我不确定从这里到哪里去 我见过一些解决方案,包括添加一个额外的行号作为主键,但如果可能的话,我更喜欢使用“代码” 有什么想法吗?经过一些尝试,我找到了一个只读解决方案 在视图中,我将列修改为: 选择ISNULL(code,-
有什么想法吗?经过一些尝试,我找到了一个只读解决方案 在视图中,我将列修改为:
选择ISNULL(code,-1)作为代码
指定ISNULL允许EF推断主键。它并不理想,因为我希望它也是可写的。你得到的信息是:
错误6002:表/视图“KittyCat.dbo.view\u GetCatDetails”不存在
定义主键。已推断出密钥,并且
已将定义创建为只读表/视图