扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:赛迪网 limeinan 来源:天新网 2008年3月27日
关键字: Mssql SQL SQL Server 数据库
由 Microsoft® SQL Server
每个数据库 API 都包括一些函数、接口、方法、对象或结构的集合,通过这些集合返回错误和消息。每个 API 函数或方法通常返回表示操作成功的状态代码。如果此状态不是成功状态,则应用程序可以调用错误函数、方法或对象来检索错误信息。
实际上 SQL Server 有两种返回错误信息的机制:
错误
◆严重度为 11 或高于 11 的 sysmessages 中的错误。
◆严重度为 11 或高于 11 的任意 RAISERROR 语句。
邮件
◆PRINT 语句的输出。
◆几个 DBCC 语句的输出。
◆严重度为 10 或低于 10 的 sysmessages 中的错误。
◆严重度为 10 或低于 10 的任意 RAISERROR 语句。
ODBC 的错误处理
ODBC 规范引入的错误模型一直是一般数据库 API 的错误模型的基础,如 ADO、OLE DB 和通过 ODBC 建立的 API (RDO、DAO 和 MFC 数据库类)。在 ODBC 模型中,错误具有以下属性:
◆SQLSTATE
SQLSTATE 是一个 5 个字符的错误代码,它最初是在 ODBC 规范中定义的。SQLSTATE 对所有 ODBC 驱动
ODBC 2.x 返回一个 SQLSTATE 代码的集合,ODBC 3.x 返回与 X/Open 数据管理并列的一组 SQLSTATE 代码:结构化查询语言 (SQL),标准版本 2。因为所有 ODBC 驱动程序都返回相同的 SQLSTATE 代码集合,所以将错误处理基于 SQLSTATE 代码的应用程序更易于移植。
◆本机错误号
本机错误号是来自基础数据库的错误号。ODBC 应用程序将收到的 SQL Server 错误号作为本机错误号。
◆错误信息字符串
错误信息通过错误信息字符串参数返回。
当 ODBC 函数返回的状态不是 SQL_SUCCESS 时,应用程序可以调用 SQLGetDiagRec 以获得错误信息。例如,如果 ODBC 应用程序收到一个语法错误(SQL Server 错误 170),则 SQLGetDiagRec 返回:
|
ODBC SQLGetDiagField 函数允许 ODBC 驱动程序在此驱动程序返回的诊断记录中指定驱动程序特定的诊断字段。SQL Server ODBC 驱动程序指定驱动程序特定的字段以放置 SQL Server 错误信息,如 SQL Server 严重度和状态代码。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。