问题标签 [savepoints]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1262 浏览

oracle - 我可以用保存点代替在 Oracle 中启动新事务吗?

现在我们用于插入记录集的过程是这样的:

(请注意,“记录集”是指一个人的记录以及他们的地址、电话号码或任何其他连接表)。

  1. 开始交易。
  2. 插入一组相关的记录。
  3. 如果一切都成功,则提交,否则回滚。
  4. 返回到步骤 1 获取下一组记录。

我们应该做更多这样的事情吗?

  1. 在脚本开头启动事务
  2. 为每组记录启动一个保存点。
  3. 插入一组相关记录。
  4. 如果有错误则回滚到保存点,如果一切成功则继续。
  5. 在脚本开头提交事务。

在遇到 ORA-01555 的一些问题并阅读了一些 Ask Tom 文章(如这篇文章)之后,我正在考虑尝试第二个过程。当然,正如 Tom 所指出的,开始一项新事务应该由业务需求来定义。第二个过程值得尝试,还是一个坏主意?

0 投票
2 回答
3308 浏览

python - 在 python sqlite3 中使用保存点

我正在尝试将保存点与 python 2.6 中内置的 sqlite3 模块一起使用。每次我尝试释放或回滚保存点时,我总是会收到一个OperationalError: no such savepoint. 我错过了什么?

从此代码:

0 投票
2 回答
3697 浏览

nhibernate - 实现 NHibernate 嵌套事务行为

我正在尝试使用 NHibernate 的事务控制和 FlushMode 选项来实现某种嵌套事务行为,但是在阅读过多之后事情变得有点混乱,所以任何关于我在下面列出的事实的确认都将非常有用。

我想要的是打开一项拆分为小交易的大交易。想象以下场景:

  • TX1 打开一个 TX 并插入一个 Person 的记录;
  • TX2 打开一个 TX 并将这个人的名字更新为 P2;
  • TX2 提交;
  • TX3 打开一个 TX 并将这个人的名字更新为 P3;
  • TX3 回滚;
  • TX1 提交;

我希望看到 NH 将 INSERT 和 TX2 UPDATE 发送到数据库,只是忽略 TX3,因为它已回滚。

我尝试使用 FlushMode = Never 并且仅在要求正确的开始/提交/回滚后刷新会话,但 NH 始终使用对象的最终状态更新数据库,与提交和回滚无关。这正常吗?当使用 FlushMode = Never 时,NH 是否真的忽略了事务控制?

我也尝试使用 FlushMode = Commit 并打开嵌套事务,但我发现,因为 ADO.NET,嵌套事务实际上总是相同的事务。

请注意,我并不是要实现“全有或全无”的行为。我正在寻找一种保存点的工作方式。有没有办法用 NH 做到这一点(保存点)?

先感谢您。

菲利普

0 投票
2 回答
1317 浏览

c# - 如何将 Linq 的保存点设置为 SQL 并使用“NO”ExecuteCommand?

它有效,但仅适用于 ExecuteCommand。我想使用一个函数,因为我看不到保存点中发生了什么!

0 投票
2 回答
2053 浏览

mysql - ActiveRecord、MySQL 和嵌套事务——行为是什么?

Rails 使用保存点来实现与 MySQL 的嵌套事务,据我了解,就原子数据更改而言,其语义与实际嵌套事务相同。

  1. 这是真的?
  2. 在代码中的任意时间调用“保存”怎么样?交易仍然保持开放,直到区块结束,对吧?使用嵌套事务/保存点时的行为有什么不同吗?
  3. 还有什么需要注意的吗?
  4. 【故意煽动火焰战争】我应该切换到PostgresSQL吗?
0 投票
1 回答
1846 浏览

hibernate - 使用休眠的保存点

问题是我在临时基础上在休眠中使用保存或更新...

现在,当我最终触发更新时,它将永久存储在数据库中,否则回滚它..

如何使用休眠基础创建保存点是春天。

喜欢

现在我想在保存或更新之前添加保存点。

任何帮助将是appriciate..

谢谢你的建议。

0 投票
1 回答
1214 浏览

.net - 实体框架和 SQL Server 保存点

我问了一个关于嵌套事务的不同问题,我的问题的答案足以让我意识到我问的问题很糟糕。所以这是一个更好的问题。

如何使用基于 Entity Framework 4.0 构建的 DAL有效地实现 SQL Server 保存点(链接 1链接 2 )?

我想编写以下代码并让它以 SQL Server 的 SAVEPOINTS 的方式工作

有没有这样一种方法可以做任何与此类似的事情,或者其他与 EF4 配合得很好的事情?(我们使用自定义的自我跟踪 POCO 实体)

0 投票
2 回答
5827 浏览

postgresql - 如何在postgreSQL中出现异常后重试事务

在我的代码的不同部分,我必须在出现异常后重试事务。但我不知道该怎么做。这是我的测试功能:

0 投票
1 回答
2418 浏览

sql - 从事务到保存点的 sqlite 转换

基于MySQLite的应用程序当前使用事务 - 既能够回滚,又能提高性能。我正在考虑用保存点替换所有事务。原因是应用程序是多线程的(是的,sqlite配置为线程安全的),并且在某些情况下,事务可能由两个线程同时启动(在同一个数据库上)。

  1. 有理由不这样做吗?
  2. 有什么我需要注意的陷阱吗?
  3. 我只是用BEGIN, COMMIT,ROLLBACK替换SAVEPOINT xyz, RELEASE SAVEPOINT xyz,ROLLBACK TO SAVEPOINT xyz吗?
0 投票
1 回答
240 浏览

django - 如何将 Django 1.4 与 Xeround 一起使用?

根据Xeround 的发行说明,他们不支持保存点,我不知道如何在 Django 1.4 中关闭对此的支持。有谁知道如何做到这一点?