问题标签 [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.

0 投票
2 回答
210 浏览

c# - 保活sql事务

我对 sql 事务有一个简单的问题。我在方法 A 中连接到我的数据库并启动一个 sql 事务。在方法结束时我关闭了连接,因为计算(外部方法)需要很长时间。
完成计算后,我想提交或回滚事务,但我需要相同的连接。

还有其他可能让它运行吗?

0 投票
4 回答
491 浏览

sql - (SQL-T-SQL)选择命令只有某些值?

这是我的表app_extra

AppID;AppExtraID
100;0
100;1
100;3
100;7
100;8
100;9
110;0
110;2
110;4
110;7
110;9
115;0
115;2
115;6
115;8
120; 0
120;1
120;10
130;0
130;7
130;8
130;10
140;0
140;1
140;3
150;0
150;2
150;6
150;7
150;8
150;10
160;0
160 ;8
160;10
165;0
165;8
165;10
170;0
170;2
170;8
170;10
180;0
180;1
180;5
180;7
180;10
185;0
185;1
185;7
185;10
190;0
190;2

我想知道如何只拥有没有 9 和 10 AppExtraID的 AppID

谢谢!

0 投票
4 回答
133 浏览

c# - 谁能说出我的交易出了什么问题

大家好,我已经编写了以下事务来插入数据,但是当我收到异常时,只有出现异常的数据没有插入到 db,其余的都在插入

这是我写的

我试图通过失败第二个条件来回滚事务,但我的第一个语句插入到DB.. 我应该怎么做才能克服这个

0 投票
1 回答
4471 浏览

sql-server - 带有嵌套事务的 SQL Try/Catch 逻辑

下面的存储过程是按照本文中的模板实现的:异常处理和嵌套事务。这个sproc应该处理死锁,它被另一个已经创建事务的sproc调用。内部事务的 BEGIN/COMMIT 的一些魔法不匹配,因为我得到了这个异常:Transaction count after EXECUTE indicates a mismatching number of BEGIN and COMMIT statements. Previous count = 1, current count = 0. 据我了解, catch 被执行,@xstate = -1是真的,整个外部事务被回滚。

发生不匹配的任何想法?

0 投票
1 回答
1238 浏览

c# - SqlTransaction 错误导致应用程序崩溃?

这里有一些背景: 我们的网站会定期崩溃到不得不重新启动 IIS 的地步;这几乎总是在修补 DLL 的一个小时内发生(我们使用的是网站项目,而不是 Web 应用程序项目,因此每个 ASPX 页面都是一个单独的 DLL)。

在做一些研究时,我发现我们的自制 DAL 可以在调试时导致带有 Visual Studio 的内置网络服务器实际上停止工作并在它遇到存储过程中的 SQL 错误时被关闭(我的意思是它不仅抛出一个显示在浏览器中的异常,它实际上会说 Web 服务器出现错误,需要关闭!)

在进一步挖掘中,该错误似乎与 DAL 中所有内容(包括 Select 语句)的事务使用有关。似乎发生的是这样的:

  1. 尝试执行存储过程,存储过程由于缺少/无效列或其他错误而失败。
  2. 应用程序代码捕获错误并重新抛出它(不好,是的,但我没有写这个)。
  3. 尽管有异常,事务仍试图提交,得到一个NullReferenceExceptiontransaction.Commit()行了(似乎在Connection属性上,因为有一个事务对象)。此外,这个 NullRef 似乎无法被捕获(我尝试了一个演示,该演示因无效的 Sproc 而强制崩溃,并且 NullRef 从未被捕获,即使输出错误将其类型为System.NullReferenceException
  4. 事务引发错误,例如“事务已完成且不再可用”。
  5. ???但是 VS Web 服务器崩溃了。调试这部分似乎挂在上面的异常上,永远不会离开方法。

现在,我不知道这是否是导致 IIS 崩溃的原因,但它似乎很可疑,无论如何这都是一个明显的错误。

之前没有处理过事务并且只有它们的基本概念,我的第一个问题是为什么在抛出异常后事务仍然试图提交?我的第二个问题是如何修复失败的提交和可能无限循环的异常,直到服务器死机。添加这样的东西是否有意义(该方法采用名为 SqlTransaction 的参数transaction):

这个小改动会修复我认为导致 IIS 崩溃的持续异常循环吗?DAL 本身非常脆弱,具体用于数百个文件,因此我无法正确地从头开始重写它。

编辑整个代码块是这样的(同样,遗留代码 - 使用旧的微软数据访问块助手):

但是,如果 catch 块执行事务仍会尝试提交,这似乎会导致挂起。

0 投票
3 回答
15056 浏览

.net - SqlTransaction 是否需要调用 Dispose?

我需要在 SqlTransaction 的 finally 块中调用 dispose 吗?假装开发人员没有在任何地方使用 USING,然后尝试/捕获。

0 投票
1 回答
100 浏览

php - 使用 PHP 失败的 SQL 事务

这是我的代码。我知道这应该很容易,但不知何故,SQL 返回了一个解析错误。请帮忙。

SQL 抛出以下解析错误:
解析错误:语法错误,意外 ')',期待 ',' 或 ';' 在 opt/lampp/htdocs/New/feedback/WebsiteRoot/FormExitPostSuccess.php 第 20 行

我的代码中的第 20 行是: $q1 = mysqli_query($link,$query);

编辑:数组 _POST 中的所有值都来自单选按钮。还需要验证吗??

0 投票
1 回答
2279 浏览

sql - 如何防止将大数字转换为 varchar 示例 1444092 是 1.44409e+006

这是我的最后一个查询

但是大数字将某些东西转换为 1.44409e+006 并且当 indicador 包含单词 porcentaje 时,我需要计算并添加 char '%',它会转换但我得到了这个错误

使用 sql 2005

0 投票
2 回答
1368 浏览

sql - SQL Server - 有没有更好的替代方法来提高具有大量插入的冗长事务的性能?

我有一个场景,用户在屏幕上的操作会导致在大约 50 个不同的表中实时创建新记录。用例的设计使得由于用户操作而创建的新记录需要立即供用户进行更改。所以没有离线或延迟创建的可能性。

话虽如此,明显的问题是 - 插入语句(以及一些额外的操作语句)在事务中,这使得它成为一个非常冗长的事务。这会运行大约 30 秒,通常会导致超时或阻止其他查询。

原子性需要事务。有没有更好的方法可以拆分事务并仍然保持一致性?或者有什么其他方法可以改善目前的情况?

0 投票
2 回答
3525 浏览

c# - 捕获事务连接后的 SqlTransaction 为空

我有一个循环,我用不同的参数值调用存储过程。下一次调用cmd.ExecuteNonQuery(); 我使用事务来保存所有或回滚,并使用 checkBox2 - 始终保存。我发现了一个问题,但我找不到解决方案。在触发 catch 块时出现第一个问题后,事务对象失去了连接。 t.connection一片空白!一切都很好,但交易对象在开始时没有连接!

在此处输入图像描述