这个错误在nhibernate中意味着什么

2024-02-11

出乎意料的是,我在使用 nhibernate 进行大量更新时遇到了此错误。

行已被另一个事务更新或删除(或未保存值映射不正确):[MyDomainObject]

错误中没有附加信息。是否有一些推荐的方法来帮助识别根本问题,或者有人可以给我一个更好的解释来说明此错误所表明的内容或周围的症状。

一些附加信息

我查看了该对象,所有数据看起来都很好,它有一个 ID 等。 。

请注意,这是在来自 asp.net-mvc 网站的单个调用堆栈中运行的,因此我不认为在并发性方面需要担心任何线程问题。


NHibernate 有一个对象,我们称之为theObject. theObject.Id值为42。 NHibernate 注意到该对象是脏的。对象的 Id 与未保存的值不同,对于整数主键,未保存的值为零 (0)。因此 NHibernate 发出更新语句,但没有更新任何行,这意味着数据库中没有该类型对象的行Id of 42。因此该对象已在 NHibernate 不知情的情况下被删除。这可能发生在另一个事务中(例如,您有线程问题),或者如果有人(或另一个应用程序)直接使用 SQL 对数据库删除/更改了行。

另一种可能性是你的未保存值是错误的。例如您正在使用-1指示未保存的实体,但您的映射的未保存值为零。这不太可能,因为您的应用程序通常是根据声音运行的。如果未保存的值错误,您将无法将任何实体保存到数据库,因为 NHibernate 会发出这样的命令UPDATE本应发布的声明INSERT.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

这个错误在nhibernate中意味着什么 的相关文章

  • NHibernate代理异常

    我是新 NHibernate 我正在编写一个简单的应用程序 其中的客户类包含 id 和名称 并使用 nhibernate 将对象存储到数据库中 但我得到以下信息 未配置 ProxyFactoryFactory 使用可用的 NHibernat
  • NHibernate HQL 相当于 T-SQL 的 TOP 关键字

    NHibernate HQL 相当于 T SQL 的 TOP 关键字是什么 另外 用非 HQL 方式说 给我一门课的前 15 个 是什么意思 在 HQL 中这实际上非常简单 var top15 session CreateQuery fro
  • NHibernate 按 id 逐出

    大家都知道session中有缓存 这个缓存一般可以通过2种方法来清除 会话 驱逐 会话 清除 第二种方法不仅删除单个条目的所有缓存 我有商业方法 它接收大对象的 id 来自 aspx 站点 或有时接收多个 id 并在数据库中进行原生sql操
  • 急于获取引用时重复(多对一)

    首先 是的 我正在使用 DistinctRootEntityResultTransformer 我有以下 Fluent NHibernate 映射 public FirstObjectMap Id x gt x Id HasMany
  • 如何在 Fluent NHibernate ClassMap 类中指定表名?

    我是 NHibernate 的新手 正在尝试使用 Fluent 进行映射 我的实体类名称与它必须映射到的数据库表名称不同 我正在使用派生的映射类ClassMap lt gt 但我无法指定表名 属性TableName from ClassMa
  • 如何将此本机 SQL 查询转换为 HQL

    所以我有这个很长的复杂的 Native SQLQuery string hql SELECT FROM SELECT a rownum r FROM select f2 filmid f2 realisateurid f2 titre f2
  • NHibernate:错误的列类型:发现浮点数,预期双精度

    我有一个具有属性的域实体类 public virtual double Result get set 该属性正在使用 NHibernate 3 2 代码映射内容进行映射 public class SampleResultMap ClassM
  • NHibernate:将一个类映射到两个相同的表

    我需要将一个实体映射到两个表 Invoice 和 InvoiceHistory 我不能将两个数据库表合并为一个并添加一个状态列来区分它们 这两个表具有完全相同的结构 但是 正如名称所示 InvoiceHistory 保留旧发票的历史记录 而
  • 最好的 NHibernate 二级缓存提供程序是什么?

    我见过有很多这样的 NCache Velocity 等等 但我还没有找到比较它们的表格 考虑以下标准什么是最好的 容易明白 最近正在维护中 是免费的或者有足够好的免费版本 Works 我无法说出什么是最好的或最差的 但我会分享我使用 NCa
  • NHibernate HiLo 生成和 SQL 2005/8 模式

    我手头上有一个问题 我花了几天时间寻找答案但无济于事 我们正在使用 HiLo Id 生成 一切似乎都工作正常 只要实体表处于同一架构中作为 hibernate unique key 表 表结构非常简单 我的 hi 值表在数据库中为 dbo
  • NHibernate:CreateCriteria 和 Exists 子句

    如何使用 CreateCriteria 编写以下 SQL SELECT FROM FooBar fb WHERE EXISTS SELECT FooBarId FROM Baz b WHERE b FooBarId fb Id 您可以这样做
  • 升级到 NHibernate 3.1:LINQ、Any 和映射组件集合的错误

    我们目前正在从 NHibernate 2 升级到 3 1 以下场景适用于旧的 LINQ 提供程序 但不适用于 NHibernate 3 1 中的新提供程序 以下是该场景的映射 public class FooDbMap ClassMap
  • NHibernate.Linq 类似

    如何使用 NHibernate Linq 生成此查询 WHERE this Name LIKE p0 p0 test Notice NO wild card 请注意 这不是 Linq To Sql 或实体框架 这就是 NHibernate
  • NHibernate QueryOver SQLFunction in where 子句

    我想查询一个具有多行的表 每行都有一个timestamp数据每隔十分钟出现一次 我想找到任何丢失数据的开头 即没有timestamp等于接下来的十分钟间隔 如下所示 select a timestamp from table as a wh
  • NHibernate 对单个属性的更新会更新 sql 中的所有属性

    我正在 NHibernate 中对单个属性执行标准更新 然而 在提交事务时 sql 更新似乎设置了我映射到表上的所有字段 即使它们没有更改 这肯定不是 Nhibernate 中的正常行为吧 难道我做错了什么 谢谢 using var ses
  • NHibernate HQL SELECT 子查询中的 TOP

    有没有办法在子查询上使用 SetMaxResult 我正在编写一个查询以返回属于最新订单的所有订单项 所以我需要限制子查询的记录数 等效的 sql 看起来像这样 SELECT i FROM tbl Orders o JOIN tbl Ord
  • NHibernate QueryOver<> - SubQuery 上的聚合函数

    如何使用 QueryOver 语法编写以下 SQL 语句 SELECT COUNT FROM SELECT FirstName LastName FROM People GROUP BY FirstName LastName as sub
  • NHibernate - 更新带有触发器的表会导致错误 - 意外行计数:2;预计:1

    因此 我尝试使用 NHibernate 更新 MS SQL 2005 数据库中的对象 请记住 这是许多实时系统中使用的旧数据库 我无法删除触发器 当我的数据提供程序尝试 SaveOrUpdate 一行时 我得到两个返回 一个用于实际更新 一
  • 流畅的 Nhibernate 枚举映射

    我有一些问题enum流畅的 NHibernate 中的映射 我知道这个问题已被问过很多次 但我找不到任何适合我的解决方案 我是 NHibernate 的新手 看起来我可能错过了一些简单而愚蠢的事情 这是我的代码 public class D
  • NHibernate:获取引用的抽象实体的具体类型

    我有以下课程 public abstract class FooBase public virtual Guid Id get set public class FooTypeA FooBase public virtual string

随机推荐

  • Firebase Firestore 与侦听器的成本

    有几个与消防成本相关的问题 但我找不到能够澄清我脑海中问题的问题 我有两个案例 我想知道每种情况下的估计成本 文档读取次数 假设我有一个显示 10 个用户的一页应用程序 打开应用程序会将侦听器附加到 userList 集合并侦听该集合中的
  • 具有纤薄框架的读取令牌

    我正在使用 SlimFramework 和 JWT 来处理基于登录名和密码的基于令牌的身份验证 我成功登录并发送令牌作为响应 这是我的代码
  • 在 Hive 中创建临时表?

    Hive 支持临时表吗 我在 apache 文档中找不到它 从 Hive 0 14 0 开始感谢 hwrdprkns 的评论 从 Hive 0 14 0 开始 支持临时表https cwiki apache org confluence d
  • ASP.NET MVC RC - 使用代码隐藏创建 MVC 用户控件

    尝试在候选版本中创建一个 MVC 用户控件 但我无法使用代码隐藏文件来创建一个 MVC 视图页面也是如此 在 Beta 版中创建视图会产生代码隐藏 我错过了什么吗 代码隐藏有点违背了 MVC 框架的目的 功能应该与视图分离 MVC 团队认为
  • 确保 C++ 中的 OpenGL 兼容类型

    OpenGL 缓冲区对象支持各种明确定义宽度的数据类型 GL FLOAT是32位的 GL HALF FLOAT是16位的 GL INT是 32 位 如何确保 OpenGL 的跨平台和面向未来的类型 例如 喂食float数据从 C 数组到缓冲
  • .NET 中通过 Process.Start 生成的进程会挂起线程

    我们的应用程序有一个后台线程 它通过以下方式生成一个进程System Diagnostics Process Process Start new ProcessStartInfo FileName url UseShellExecute t
  • Java 运行时 ClassNotFoundException

    只是有一个关于我遇到的奇怪的运行时错误的问题 我正在使用一个 JSON 服务器 当外部源提示时 该服务器会响应 JSON 对象 然而 到目前为止 我只是尝试在发送 JSON 对象之前启动并运行它 我的代码编译时没有指定任何类路径 但是当涉及
  • Java 8 forEach 带索引[重复]

    这个问题在这里已经有答案了 有没有办法建立一个forEachJava 8 中使用索引迭代的方法 理想情况下我想要这样的东西 params forEach idx e gt query bind idx e 我现在能做的最好的事情就是 int
  • MySQL 5.7 无法匹配两个汉字

    表TB title keywords 企业贷款 该如何看懂银行流水 出口退税 贷款 现金流量表 利润表 最高人民法院关于审理民间 企业贷款 合同法 贷款 中国宏观经济数据点评 企业贷款 贷款 ngram token size 2 FULLT
  • iOS Swift didBeginContact 没有被调用

    这两天我一直在努力让两个SKSpriteNode注册碰撞并唤起didBegin contact 我已经设置了他们的位掩码 categoryBitMask contactTestBitMask and collisionTestBitMask
  • 在子文件夹中运行的 Angular 7 中的路由无法正常工作

    我们正在努力将我们的应用程序迁移到新的 Angular 版本 旧的 Angular JS 是它自己的应用程序 存储库 由 NET Framework 4 5 2 ASP NET MVC 应用程序提供服务 该应用程序会将每个调用路由到Home
  • Python:我尝试使用 tabula:ModuleNotFoundError:没有名为“tabula”的模块

    我尝试使用 python 模块 tabula 但显然我已经安装失败了 我只是使用了代码 import tabula 但是 我收到以下错误消息 ModuleNotFoundError No module named tabula 有什么想法吗
  • 带有 ExtJS 4 存储的 HTTP 标头

    我已经实例化了几家商店 但在某个时刻 我会在所有这些中添加一个 HTTP 标头 我怎样才能用 ExtJS 4 做到这一点 假设您使用的是 ajax 代理 您可以更新headers http docs sencha com ext js 4
  • (使用 SSH 运行命令时出错)命令行:第 0 行:配置选项错误

    错误消息 命令行 第 0 行 错误的配置选项 sh ssh i rundeck rsa key o StrictHostKeyChecking no o email protected cdn cgi l email protection
  • window.onbeforeunload - 在 Angular2 中导入

    我正在尝试使用window onbeforeunload在我的项目中 但我不知道如何使用它 我尝试过两种方式 1st way window on beforeunload function e return Are you sure you
  • 重定向到屏幕和管道

    我想将一些输出传输到另一个程序并显示进度条 代码看起来像这样 echo Progress for i in 1 10 do echo i echo gt screen sleep 1 done xargs echo where screen
  • 如何使用 pip 进行 pyenv?

    我在 Mac 上安装了 pyenv 来管理不同的 python 版本 之前 我有系统默认的 python 2 7 位于 Library Frameworks Python framework Versions 2 7 我还有 python3
  • SW2 更新后如何修复索尼 SmartWatch 2 上的自定义表盘时间 [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 背景 索尼于 2014 年 12 月发布了索尼 SmartWatch 2 的更新 虽然更新为手表添加了新功能 但不幸的是 它导致了自定义表盘
  • Proguard 使 Android 应用程序中的 R 类反射不再起作用

    自从我尝试在 Google Play 上发布它以来 我已经在我的项目中激活了 proguard 尽管 proguard android txt 有 keepclassmembers class R public static
  • 这个错误在nhibernate中意味着什么

    出乎意料的是 我在使用 nhibernate 进行大量更新时遇到了此错误 行已被另一个事务更新或删除 或未保存值映射不正确 MyDomainObject 错误中没有附加信息 是否有一些推荐的方法来帮助识别根本问题 或者有人可以给我一个更好的