问题标签 [sqltransaction]
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.
c# - 这两种处理 sqltransaction 的方法本质上是否相同?
我正在尝试创建一种方法来运行Transaction
.
我想出了两个版本的代码,因为我猜第一个实际上并没有做我期望它做的事情。
在我的一项测试中,在遇到异常后,我注意到SqlServer2012
尽管处于事务中,但仍有几行插入到表中。
所以我认为这一定是交易本身的问题,我改变了它来解决这个问题。
通过使用 4 次插入、1 次删除和 1 次更新以及另一个插入命令运行此方法,我得到的异常是:
事务(进程 ID 59)与另一个进程在锁资源上死锁,并已被选为死锁牺牲品。重新运行事务。
当我查看表格时,我看到 3 个新插入的行(到达更新然后发生异常)!
更新 这两种方法现在都抛出相同的异常。对于第二种方法,我在添加新参数和清除旧值方面也遇到了一些困难。
这是第一个版本:
这是第二个版本:
c# - 单SqlConnection with Transaction,多命令情况
我试图只使用一个连接并一起运行两个命令,一个使用事务,一个不使用。
没有的是跟踪/记录功能,因为该解决方案部署在另一个位置。这样当过程部分失败时,我至少可以遵循日志。
我将在这里添加我的测试代码:
我收到一个错误:
当分配给命令的连接处于挂起的本地事务中时,ExecuteNonQuery 要求该命令具有事务。该命令的 Transaction 属性尚未初始化。
有没有办法在没有另一个无事务连接的情况下实现我想要做的事情?
或者,如果有更好的建议以不同的方式通过单个连接优化我的代码,我愿意学习它。
vb.net - 事务回滚错误(此 SqlTransaction 已完成;它不再可用)
我正在尝试测试第一个事务,如果它是成功的,那么我尝试第二个事务,如果第二个事务也是一个成功,那么我将两个都提交,如果第二个事务失败,我需要回滚第一个事务。
所以我有以下函数,它返回一个可以是状态之一的字典:
0(表示事务失败但设法回滚)-> sql 事务
1(表示事务成功)-> sql事务
-1(表示事务失败并且没有设法回滚)-> sql 事务
然后我在函数中有以下代码:
我还没有提交第一个事务,为什么当我尝试回滚时它说 sqlTransaction 已完成...?
感谢您的任何帮助!
sql - 我如何在 SQL 中将格式日期转换为 d/M/yyyy 并将格式时间转换为 h:mm:ss AM
我创建了一个日期时间类型的字段。我想以 YYYY/M/D 格式显示它
例子
日期 09/09/2014 显示为 2014/9/9
我还需要以这种格式显示一个时间字段 [Time_Orde] 下午 2:43:14
我使用 SQL Server 2008
我试过这个功能
我的代码:
但我无法获得这种格式 2014/9/9
c# - SqlConnection中如何判断事务是否已经启动?
我SqlTransaction
在我的代码中使用 a 。在我之前的帖子中,当一个连接具有事务锁定时,我遇到了问题,IsolationLevel.ReadUncommited
那么如何创建另一个没有锁定的连接。(如何仅在 sql 中为特定连接创建事务?)。现在,我得到了答案,Donal建议我使用myConnection.BeginTransaction(IsolationLevel.ReadUncommitted).Commit();
现在,我有时会在上面遇到问题。
不允许新事务,因为会话中还有其他线程在运行。
我不知道这里会有什么问题。仅当另一个线程正在运行时才会出现此问题。我也在不同的线程中使用相同的连接。
每当我尝试执行任何查询或尝试DataTable
使用DataAdapter
.
我无法弄清楚这里可能是什么问题?
sql-server - 将 OUTPUT Insert.id 插入到另一个表中的多个值插入
为简单起见假设我有两张桌子
user table (id, email)
user log table (id, date)
无论 id 被插入到 user 表中,相同的 id 应该被插入到 user_log 表中,否则事务应该失败。
我怎样才能做到这一点
php - 多个带有事务的 mysqli 准备语句
我试图弄清楚如何将 sql 事务与 mysqli 准备好的语句一起使用。我找不到任何使用多个准备好的语句(不是 OO)的示例,所以我不确定如何使用它们的事务。这是我能想到的最接近的:
但是,我不知道这是否可行。不过,我最大的问题是我不确定如何检查查询是否失败(以及是否提交)。我看到了一个我认为做了类似的例子
但我不能真正做到这一点,因为我有多个准备好的语句要执行。
这应该如何工作?
c# - sqltransaction 在插入数据时插入一条双记录
我正在使用该 sqltransaction 为每个数据插入多个表。
但是我的问题是数据库有两个相同的数据。
我应该怎么做才能解决这个问题?
请帮我?谢谢
c# - 为什么调用 commit 函数时 SqlTransaction 可能无法提交?
我遇到了一个问题,即使没有任何查询引发异常,所做的更改也会被回滚。这很奇怪,因为代码在一个环境中工作,但在另一个环境中没有提交更改。
这是处理事务的函数。当我在提交上设置一个断点时,我点击了提交,我可以看到数据库中的更改,但是当事务被处理时,更改被回滚。
更新:额外的测试表明这不是事务的问题。如果事务从下面的代码中完全删除,则应用程序的行为方式相同。当连接关闭时,更改将被撤消。
c# - 如何跨多种方法使用 SqlTransaction
假设我们有一个可以删除的对象 A 一个持有来自 A 的前键的对象 B
如果要删除A,则必须先从B中删除forendkey,然后才能删除A,但如果出现问题,它应该回滚,但我也想独立使用B中的delete forendkey,但目前我没有不知道如何实现
我目前的想法:
但是就像你看到的那样,这很丑