小编Dav*_*iel的帖子

实体框架和UPDATE CASCADE

这里有点沮丧.我正在尝试找到一种方法来支持实体框架的更新级联,并且似乎没有内置方式.对网络的研究基本上表明每个人都说你永远不应该改变主键值,但是有一些有效的情况你需要(例如UPC值作为主键,而UPC条形码现在变得更大,这意味着更新现有的和保持适当的外键关系).

一种方法显然是利用SavingChanges事件,查看主键字段是否正在更改,如果是,则遍历导航属性并以这种方式更新子表.

从理论上讲,这可行.但这听起来很麻烦.谁有更好的主意?不能相信比尔会因为大多数人不这样做而将这些东西排除在框架之外.SQL Server仍然支持它...

谢谢!

entity-framework cascade foreign-key-relationship navigation-properties

5
推荐指数
1
解决办法
2593
查看次数

MS Access链接表中可以为空的bool字段

看起来我不是唯一一个有这个问题的人,但似乎没有对这个问题感到满意.

我在Access 2010中工作,使用链接表到SQL Server 2005数据库(通过SQL Server ODBC管道).在该表中,其中一个布尔字段被标记为可为空,并且该表中的多个记录实际上在该字段中具有空值.到现在为止还挺好.

在Access中,只要打开链接表,Access就会显示0(假)而不是空白单元格(问题#1).如果您尝试修改记录中的任何内容,则会收到一条错误消息,指出该记录已被其他人修改,并且您的更改无法保存.最后一个问题是由于Access不能容忍可以为空的bool字段,并且在尝试保存值时有点疯狂.

我的研究表明,这可能与Access在后台使用Jet连接到SQL Server数据库有关,而Jet显然不支持可空的bool.似乎没有办法配置Jet来支持这一点(尽管如果你在代码中连接,可能会有).我还认为MS正在用Office 2010中使用的另一种技术取代Jet(ACE,我认为),但无法判断这是否是Access实际使用的内容.在任何一种情况下,我都找不到关于可空bool的可配置选项.

最后,这个问题似乎很久以前就已经提到了MS,但是他们的结局没有答案:https://connect.microsoft.com/SQLServer/feedback/details/617339/null-bit-fields-produce -spurious-MS-访问错误-当-用最原生的ODBC驱动程序?WA = wsignin1.0#标签

我想知道是否有其他人遇到这个并找到了解决方案.在你建议它之前,关闭可空选项并将所有空值设置为'false'在我们的例子中并不是一个真正的选择.对我们来说,null实际上是一个有效状态,与'false'非常不同.

谢谢!

sql-server ms-access nullable ms-jet-ace

5
推荐指数
1
解决办法
4122
查看次数