You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP连接SQLServer报错:未定义函数mssql_select_db()求助

解决Fatal error: Call to undefined function mssql_select_db()的问题

嘿,我一眼就看出问题所在了——你混用了两套完全不兼容的SQL Server扩展函数!

错误根源

mssql_select_db()是旧版MSSQL扩展里的函数,而你当前代码用的是微软官方推荐的sqlsrv扩展(从sqlsrv_connect()就能明确看出来)。这两套扩展的API完全不互通,所以PHP找不到这个函数,直接抛出了致命错误。

而且还有个关键细节:你在$connectionInfo里已经指定了"Database"=>"Banca_de_Revista",连接时就已经默认选中了这个数据库,根本不需要再单独调用“选择数据库”的函数。

修正后的完整代码

我帮你把代码改成纯sqlsrv扩展的正确写法,去掉多余的错误逻辑:

<?php
$server = "DESKTOP-RA9T588";
$connectionInfo = array(
    "Database"=>"Banca_de_Revista", 
    "UID"=>"Arthur", 
    "PWD"=>"inter190744"
);

// 建立数据库连接
$conn = sqlsrv_connect($server, $connectionInfo);

if ($conn) {
    echo "Congratulations !! The connection to the database has occurred normally!";
} else {
    echo "Could not connect.";
    die(print_r(sqlsrv_errors(), true));
}
?>

额外补充

如果之后你需要在连接后切换到其他数据库,别再用mssql的函数,而是用sqlsrv扩展执行USE语句:

// 示例:切换到其他数据库
$switchDbSql = "USE 目标数据库名";
$stmt = sqlsrv_query($conn, $switchDbSql);
if (!$stmt) {
    die(print_r(sqlsrv_errors(), true));
}

另外提一句你原代码里的小疏漏:你写了mssql_select_db($bank, $conmssql),但你的连接句柄是$result,变量名不匹配也是潜在问题,不过不是这次报错的核心原因。

内容的提问来源于stack exchange,提问作者Arthur Gabriel Silva Arantes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:44:09