检索错误消息

当查询出错时,获取驱动程序返回的错误消息以确定问题的原因非常重要。语法是:

sqlsrv_errors([int $errorsOrWarnings]);

这将返回一个数组:

描述
SQLSTATE SQL Server / OBDC 驱动程序所在的状态
SQL Server 错误代码
信息 错误的描述

通常使用上面这样的函数:

$brokenQuery = "SELECT BadColumnName FROM Table_1";
$stmt = sqlsrv_query($conn, $brokenQuery);

if ($stmt === false) {
    if (($errors = sqlsrv_errors()) != null) {
        foreach ($errors as $error) {
            echo "SQLSTATE: ".$error['SQLSTATE']."<br />";
            echo "code: ".$error['code']."<br />";
            echo "message: ".$error['message']."<br />";
        }
    }
}