开发人员在努力做到妥善地 处理 意外,这样用户就不用担心天书般的系统 错误 信息。出于这个原因,异常 处理 是每个.NET应用程序的一个标准部分。Try/catch块让你能够捕捉异常并从该点控制应用程序的执行。与 数据 库进行交互操作的时候会发生很多 错误 ,
开发人员在努力做到妥善地 处理 意外,这样用户就不用担心天书般的系统 错误 信息。出于这个原因,异常 处理 是每个.NET应用程序的一个标准部分。Try/catch块让你能够捕捉异常并从该点控制应用程序的执行。与 数据 库进行交互操作的时候会发生很多 错误 ,但是很多开发人员都不知道如何 处理 数据 库层的 错误 。本文我们将探讨如何利用SQLServer和T-SQL来 处理 你 数据 库代码里的 错误 。
处理 T-SQL里的 错误
SQLServer的SQL对话让你能够轻松地 处理 可能会在存储进程、函数里发生的非致命 错误 ,但是并不是所有的 错误 都很容易 处理 。事实上,致命和非致命的 错误 有很多。什么是致命的,什么是非致命的,对此没有很完备的文档说明,但是你的应用程序代码总是可以利用try/catch块来 处理 致命的 数据 库 错误 。对于其他所有的 错误 ,你可以使用下面的技术。
事务
你应该在 数据 库代码里使用事务,以确保在一切都没有问题的时候所有的更改都被完成。SQLServer的在线帮助将事务描述为任务的一个逻辑单元,它由一系列语句(选择、插入、更新,或者删除等)组成。如果在事务期间没有发生任何 错误 ,那么对事务的所有改动都会成为 数据 库的永久部分。如果在这期间发生了 错误 ,不会对 数据 库进行任何修改。
事务包含在BEGIN TRANSACTION和END TRANSACTION语句之间。ROLLBACK TRANSACTION语句可以取消所有的更改,因此不会发生任何变化。用COMMIT TRANSACTION语句可以进行永久的更改。现在,就让我们把注意力放在如何 处理 T-SQL里的 错误 上。
@@Error
@@Error函数让你可以实现T-SQL 错误 处理 。它会返回由系统所返回的 错误 代码。如果没有 错误 发生就会返回[0]。@@Error函数必须紧接在一个语句之后立即被调用,因为它会在每个T-SQL语句之后被清除。
1 2 3 4 下一页
查看更多关于用SQLServer处理数据层错误的详细内容...