我有两张桌子:
- 财产
- 属性_本地化
和一个从属性中删除记录的 SP:
- (删除_SP)
我有一个触发器,它触发而不是从属性中删除记录,它Property_Localize
首先从表中删除相关记录,然后从属性表中删除记录。
Property table's
主键也在其他一些表中用作外键。
现在我们正在尝试从中删除记录Delete_SP.
如果该property
表在任何其他表中有关联的记录,则它会抛出异常,此异常将在中处理try..catch block
,因此无论如何 SP 在输出参数中返回一些默认值并成功执行。
如果我们从后端(SQL Server Management Studio)运行这个 SP,这绝对可以正常工作。
但是当我们从 asp.net 执行这个 SP 时,它会给出以下错误:
“在批处理结束时检测到不可提交的事务。事务被回滚。”
虽然它给出了正确的输出参数。
我们还尝试在触发器中添加 try catch 和显式事务块,但它仍然给出相同的错误。
任何帮助,将不胜感激。
我忘了提,我正在使用 CodeSmith 生成的数据库层。