直到昨天,我一直很高兴地在 IIS 7 上使用 PHP 5 连接到 SQL Server Express 2005。
昨天我在选择数据库时开始遇到错误。
<?php
$link = mssql_connect('localhost,1433', 'login', 'password');
if(!$link) {
die('could not connect to MSSQL');
}
if(!mssql_select_db('database', $link)) {
echo mssql_get_last_message();
die('could not select db');
}
?>
输出如下:
“已将数据库上下文更改为“数据库”。无法选择数据库”
所以 mssql_get_last_message
正在输出 Changed database context to 'database'.
这看起来完全正确,并不是真正的错误消息。但是 mssql_select_db 仍然失败。
我测试了以下内容:
- 登录正确(更改用户名或密码时出现不同的错误)
- 数据库存在(如果我使用不存在的数据库名称,你会得到不同的错误
- 登录可以连接到数据库(如果在SQL Server中删除数据库用户会得到不同的错误)
我不确定还要测试什么。
最佳答案
感谢 Martin 和 Phil 的回复。我创建了一个新的登录名和一个新的对应用户,解决了这个问题。
关于php SQL Server mssql_select_db 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3830237/