忽略触发器中的错误

2024-02-16

我有一个存储过程,在插入/更新/删除时的触发器内调用。

问题是这个 SP 中有一个不重要的代码块。 因此我想忽略此代码块引起的任何错误。

我将此代码块插入到 TRY CATCH 块中。但令我惊讶的是我收到了以下错误:

当前事务无法提交,并且无法支持写入日志文件的操作。回滚事务。


我也经历过同样的折磨,我刚刚解决了! 只需在触发器的第一步添加这一行就可以了:

SET XACT_ABORT OFF;

就我而言,我正在处理将导致错误的批处理和来自 SQL 的错误变量提供给特定表的错误。

默认值XACT_ABORT is ON,因此即使您在 TRY CATCH 块内处理错误(就像我正在做的那样),整个事务也不会被提交。将其值设置为OFF即使发生错误也会导致事务被提交。

不过,当错误没有处理时我没有测试......

欲了解更多信息:

  • 设置 XACT_ABORT (Transact-SQL) |微软文档 https://learn.microsoft.com/en-us/sql/t-sql/statements/set-xact-abort-transact-sql
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

忽略触发器中的错误 的相关文章

  • 使用 MySQL 触发器将所有表更改记录到辅助表

    我有一张桌子 CREATE TABLE data table data id INT NOT NULL AUTO INCREMENT PRIMARY KEY field1 INT NOT NULL field2 INT NOT NULL f
  • 子查询在多项选择时返回超过 1 个值的 SQL 错误

    我想要一个临时表 它将使用 select 语句插入值 但每次我运行查询时 总是出现错误 子查询返回超过 1 个值 当查询跟随 gt 或子查询用作表达式时 不允许这样做 该语句已终止 0 行受影响 这很奇怪 因为代码中似乎没有错误 但如果有的
  • SQL Server 文本数据类型最大长度 = 65,535?

    我正在使用的软件使用文本字段来存储 XML 根据我的在线搜索 文本数据类型应该包含 2 31 1 个字符 目前 SQL Server 每次都会将 XML 截断为 65 535 个字符 我知道这是由 SQL Server 引起的 因为如果我直
  • C# 与 INSERT 存储过程 \r\n 问题

    基本上我有一个非常简单的插入语句 INSERT INTO dbo ORDER ORDER DATE ORDER TYPE ID PAYMENT STATUS ID TOTAL COST SENDER NAME SENDER EMAIL SE
  • Febelfin CODA(编码账户报表)2.3 仅在比利时使用?

    我的任务是编写一些代码来解释来自 不同 比利时 银行的 CODA 文件 CODA 文件代表编码帐户文件文件 似乎是文本文件的比利时名称 其中包含特定银行帐户上发生的每笔银行交易的一行 这包括 SEPA 直接借记交易信息 我们合作的前 2 家
  • 将语句插入 SQL Server 数据库

    最近几天我试图找到这个错误 但没有成功 我正在尝试在数据库中插入一个新行 一切都很顺利 没有错误 也没有程序崩溃 My INSERT声明如下 INSERT INTO Polozaj Znesek Uporabnik Cas Kupec Po
  • 如何返回调用不同数据库中的存储过程的远程数据库名称?

    我在一个 SQL Server 2008 R2 上有许多不同的数据库 为了便于论证 我们将它们称为 DB A DB B 和 DB C 我被要求开发一个将存在于 DB A 上的存储过程 该存储过程将用于删除和创建索引 并在 DB A 的表中存
  • OptimisticConcurrencyException - SQL 2008 R2 而不是使用实体框架插入触发器

    使用 SQL 2008 R2 11 月版本数据库和 net 4 0 Beta 2 Azure 辅助角色应用程序 辅助角色收集数据并将其插入到具有一个标识列的单个 SQL 表中 由于可能会运行此辅助角色的多个实例 因此我在 SQL 表上创建了
  • 嵌套 linq 查询上的“列名 [ColumnName] 无效”

    最后更新 经过大量测试后 我意识到 如果我对 SQL 2000 和 SQL 2005 上的同一数据集 在本例中为 Northwind 表运行相同的查询 我会得到两个不同的结果 在 SQL 2000 上 我收到问题中的错误 在 SQL 200
  • Spring事务中requires_new和嵌套传播的区别

    我无法理解之间的行为差 异PROPAGATION REQUIRES NEW and PROPAGATION NESTED传播政策 在我看来 在这两种情况下 当前进程都被回滚 但不是整个事务 有什么线索吗 请参阅此链接 PROPAGATION
  • 使用递归 CTE 遍历父/子树?

    我被 cte 困住了 我想要一个查询 其中第一个父级为空 上一个父级的子级将成为下一个父级的父级 依此类推 WITH RESULT PARENT CHILD TNAME LEVEL AS anchor SELECT E PARENT GEN
  • 从 SQL Server 的表中“流式”读取超过 1000 万行

    以流方式 如 SQL Server Management Studio 那样 从表 在 SQL Server 2012 中 BI 实例 读取数百万条记录的最佳策略是什么 我需要在本地缓存这些记录 C 控制台应用程序 以进行进一步处理 Upd
  • 为什么需要 EndExecuteNonQuery()?

    文档here http msdn microsoft com en us library ca56w9se aspx指出 开发人员必须致电 EndExecuteNonQuery 方法完成 操作 我无法找到一个充分的理由来解释为什么会这样 或
  • 从 SQL XML 列中的元素获取属性名称

    对于此 xml 在 SQL 2005 XML 列中
  • SQL Server 2008 中超前滞后函数的替代

    我想将当前行与下一行中的值进行比较 SQL 有LEAD and LAG函数来获取下一个和上一个值 但我无法使用它们 因为我使用的是 SQL Server 2008 那么我该如何得到这个呢 我有带输出的表 Id ActId StatusId
  • 使用 min(datetime) 了解 SQL Server 行为

    长话短说 这只是我的一个愚蠢的假设 我确信一个专栏是一个日期时间 但它不是 所以不要指望在这个问题中找到任何有趣的东西 把它留在这里 以便民主党得到他的正确接受回答 我写了一个像这样的简单查询 SELECT ID MIN DateMadeA
  • 尝试 Catch 性能 Java

    当捕获异常而不是进行检查时 try catch 需要多长时间 以纳秒为单位 假设消息具有用于查找的 HashMap 类型性能 try timestamp message getLongField MessageField TIMESTAMP
  • 我们可以在 Azure 上的 T-SQL 过程中创建数据库范围的凭据吗

    我们可以在 Azure SQL 上的 T SQL 过程中为共享访问签名创建数据库范围的凭据吗 我们正在尝试从存储在 Azure blob 上的 csv 文件批量插入数据 以下是步骤 使用 JAVA 创建 SAS 凭证 Java将调用存储过程
  • 计算日期范围内的天数以及可能重叠的排除集

    给定以下示例查询 考虑到这些范围可能具有重叠的日期 并且还给出了一组要排除的范围 那么计算日期范围内的总天数的合理且高效的方法是什么 更简单地说 我有一个表 其中包含一组关闭计费的日期范围 我从一个日期范围 例如 Jan1 Jan31 开始
  • 为什么我要费心使用全文搜索?

    我是全文搜索新手 我使用了以下查询 Select From Students Where FullName LIKE abc 学生表包含数百万条记录 所有记录都是随机的 如下所示 QZAQHIEK VABCNLRM KFFZJYUU 仅用了

随机推荐

  • iPhone - 图像叠加MapKit框架?

    我可以看到 使用 iOS4 您现在可以在谷歌地图上平铺图像 一直在查看苹果的 TileMap 示例 这很棒 因为这就是我想要做的 但从我所看到的来看 我需要知道图像的 GEO 参考 以便我可以使用适当的缩放级别等对图像进行光栅化 我拥有的是
  • 将图片保存到媒体库中的自定义文件夹

    WhatsApp 现在将图片保存到媒体库中名为 WhatsApp 的自定义文件夹中 WhatsApp 是否使用未记录的 API 或者每个开发人员都可以这样做吗 现在我只知道可以将图片保存到 相机胶卷 或 保存的图片 中 WhatsApp 似
  • 使用 ”。” zend validator float 中的小数

    我有一个表单 其中包含一个名为 价格 的元素 我使用 float 验证器验证此元素 问题是当我插入时 例如 12 50 gt 它是有效的 但是当我尝试将其保存在数据库 mysql 上时 它被保存为 12 00 所以我想将小数字符从 更改为
  • 替换 Eclipse 中所有文件中的字符串[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何在当前项目的所有文件中搜索并替换字符串 假设我有字符串 sites default 现在我希望它是 public sites defa
  • PHP glob() 列出不以下划线开头的文件?

    标准的 glob 函数用法如下 dir glob txt foreach dir as filename echo filename size filesize filename n 使用 作为通配符 但是有没有办法否定它以忽略任何以下划线
  • Google 地图 V3 不会删除事件侦听器

    我在使用 Google 地图 API v3 时遇到问题 我试图在缩放更改时删除鼠标悬停侦听器 这是我的代码 document ready function var myOptions var map new google maps Map
  • Android LruCache(Android 3.1)线程安全

    是新的Android类LruCache http developer android com reference android util LruCache html线程安全 java 文档说 这个类是线程安全的 通过在缓存上同步以原子方式
  • 用Qt等待一个SLOT完成执行

    在我的代码中我发出一个信号mySignal我想等待连接的插槽结束mySlot在继续之前执行 emit mySignal Wait for the end of mySlot execution Some code that has to b
  • 使用 CLASSIC ASP 将数据返回到 jsonp 调用

    我已经浏览了 stackoverflow 上的帖子 但似乎找不到我要找的东西 如果我这样做 表格 ajaxSettings dataType jsonp get http MYREMOTESERVER com GetCustNewID as
  • C# 检查网络状态

    如何检查我是否有开放的网络连接并且可以联系 C 中的特定 IP 地址 我在 VB Net 中见过示例 但它们都使用 My 结构 谢谢 如果您只想检查网络是否正常 请使用 bool networkUp System Net NetworkIn
  • 为什么“rails runner -e production”不起作用?

    为了解决我的问题 该问题在 生产中的 will paginate 错误未定义方法 paginate https stackoverflow com questions 19577344 will paginate error in prod
  • 如何使用查找和替换在 Xcode 中用单个新行替换多个新行

    在Xcode项目中 我们编写程序时一般不会关注行间距 那么编码完成后 如何用一行删除所有多余的换行符呢 在文本搜索字段中 可以使用以下方法进行多行 非打印字符 搜索 替换 假设我想替换所有实例 This is a comment with
  • 我的 Cocos2D-iPhone 游戏可以支持 VoiceOver 吗?

    我正在制作一款游戏 玩家通过动作对声音做出反应 由于玩游戏不需要视觉元素 而且许多人都是闭着眼睛玩的 所以不完全兼容 VoiceOver 似乎很遗憾 我目前正在使用 Cocos2D iPhone 和 CocosDenshion 来处理音频
  • php图像显示无需在邮件中下载

    您好 我想使用 php 邮件程序类发送 html 格式的图像 但图像下载后显示在邮件中 但我想显示图像而不下载 邮件程序类中是否有任何选项或者有另一种方法 或者我必须以其他格式发送图像 好吧 可能的答案只有两种 您不想在电子邮件中嵌入实际的
  • 使用 IO 在 C# 中读取十六进制

    我是从 Java 转向 C 的新手 我正在尝试使用十六进制 IO 读取文件 当我读取第一个字节时 我看不到我在十六进制编辑器中看到的内容 我在用着 StreamReader reader new StreamReader fileDirec
  • 如何获得与 Apple 推送通知一起播放的自定义声音?

    我正在尝试在发送 Apple 推送通知时播放自定义声音 显示弹出消息 徽章也会更新 但我总是播放默认的 iPhone 声音 而不是我的自定义声音 这是我发送的 JSON 数据 aps sound sound caf badge 2 aler
  • 将值返回给不同的 Activity

    我有一个应用程序 基本上看起来像附图中的设计 可以看到 有4个Activity 部分Activity有碎片 我想将测试的答案返回到用户的个人资料中 到目前为止 我一直将结果上传到服务器 并让应用程序在用户每次返回时更新用户的个人资料简介活动
  • ng-repeat 过滤器“显示所有”项目(如果未选择过滤器)

    我有一个ng repeat过滤器使用
  • iOS 7 UIWebView 键盘问题

    我必须像这里一样删除这个栏link https stackoverflow com questions 13101642 ios keyboard style in webview但对于 iOS 7 此代码不起作用 我们通过一些 Objec
  • 忽略触发器中的错误

    我有一个存储过程 在插入 更新 删除时的触发器内调用 问题是这个 SP 中有一个不重要的代码块 因此我想忽略此代码块引起的任何错误 我将此代码块插入到 TRY CATCH 块中 但令我惊讶的是我收到了以下错误 当前事务无法提交 并且无法支持