正如标题所说,让SQL事务与SQL Server一起运行的全部要求是什么?事务最终会变得更加复杂,但到目前为止,调试过程让我不得不剥离所有的逻辑(几乎要把我的头发都扯掉(。
一些可能有帮助的前兆信息。
- 正在尝试从DBeaver本地运行此程序
- 事务的代码肯定连接到了正确的DB,它自己也能很好地工作
- 将代码作为脚本执行Opt+X(因此
n
不会提交语句(
当前代码如下:
BEGIN TRANSACTION Test_Transaction
SELECT COUNT(*) FROM schema.table;
COMMIT TRANSACTION
现在真的很简单,我得到的错误是:
SQL Error [42601]: ERROR: syntax error at or near "SELECT"
Position: 21
这表明SELECT
处存在语法错误,但我在事务中输入了什么并不重要,它只是在BEGIN TRANSACTION Test_Transaction
行之后的第一个输入处失败,这就是为什么我认为我错过了SQL事务运行它们的要求。
评论中@Larnu的超级亮点!显示的错误代码对于SQL Server来说不够高,所以,在检查我的连接设置时,我意识到我在DBeaver中的DB连接使用Postgres作为驱动程序。改变这一点让事情运转起来。