gpt4 book ai didi

sql-server - 我可以在事务期间在单独的事务中运行一些SQL吗

转载 作者:行者123 更新时间:2023-12-03 07:52:52 25 4
gpt4 key购买 nike

我正在尝试为存储过程以及我们的标准错误处理创建一些标准日志记录。我想在存储过程的开头调用存储过程以登录到它已启动的表,并在存储末尾调用存储过程以记录它已成功完成的日志。我还想从错误处理程序中调用存储过程来记录故障和错误消息/编号。

该存储过程可能具有其自己的事务,或其调用堆栈可能已开始一个事务,或者可能没有打开的事务。无论主事务中发生了什么,我都根本不想回滚对日志记录过程的任何调用。即,记录存储过程的处理需要与主处理完全分开。

是否可以执行某些SQL,就好像它在事务期间处于单独的 session 中一样?最简单的方法是什么?

顺便说一句,我不能使用xp_cmdshell,否则我将对sqlcmd进行调用。

谢谢,

标记

最佳答案

您所描述的是嵌套事务。但是,嵌套事务不是真实的。 https://www.sqlskills.com/blogs/paul/a-sql-server-dba-myth-a-day-2630-nested-transactions-are-real/您将不得不在另一个上下文中进行日志记录。由于您处于存储过程中,因此必须在日志记录代码中使用动态sql才能起作用。

关于sql-server - 我可以在事务期间在单独的事务中运行一些SQL吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54632493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com