从PHP查询Ms SQL server返回无效名称
我已成功连接到MS SQL server,但尝试将SQL查询从SQL server复制到PHP代码会返回无效对象。 我可能做错了什么 我试过使用表“Students”而不使用美元符号,也试过在“MARINUS HIGH”中引入下划线,但仍然是相同的错误。我也试过下面的代码从PHP查询Ms SQL server返回无效名称,php,sql,sql-server-2016,Php,Sql,Sql Server 2016,我已成功连接到MS SQL server,但尝试将SQL查询从SQL server复制到PHP代码会返回无效对象。 我可能做错了什么 我试过使用表“Students”而不使用美元符号,也试过在“MARINUS HIGH”中引入下划线,但仍然是相同的错误。我也试过下面的代码 $sql = "SELECT * FROM Students WHERE No_='A100/0011G/17' AND Password='123'"; 返回 数组([0]=>Array([0]=>42S02[SQLSTA
$sql = "SELECT * FROM Students WHERE No_='A100/0011G/17' AND Password='123'";
返回
数组([0]=>Array([0]=>42S02[SQLSTATE]=>42S02[1]=>208[code]=>208[2]=>[Microsoft][ODBC驱动程序11用于SQL Server][SQL Server]无效的对象名“学生”。[message]=>[Microsoft][ODBC驱动程序11用于SQL Server][SQL Server]无效的对象名“学生”。)
希望使用PHP从MS SQL server获取。任何帮助都将不胜感激。
谢谢。这是您的实际表名吗
[MARINAS HIGH$Students]
在我的服务器管理工作室上,它读取dbo.MARINAS HIGH$Students$sql变量返回Management StudioTry在[MARINAS HIGH$Students]
中转义$
的预期结果:[MARINAS HIGH\$Students]
尝试以下方式:从[dbo]中选择*。[#玛丽纳斯高中$Students]
$serverName = "127.0.0.1";
$connectionInfo = array( "Database"=>"MyDB", "UID"=>"sa", "PWD"=>"******" );
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false ) {
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT No_, [Name], [Password]
FROM [MARINAS HIGH$Students]
WHERE (No_='A100/0011G/17') AND ([Password]='123')";
$stmt = sqlsrv_query( $conn, $sql);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true));
}
if( sqlsrv_fetch( $stmt ) === false) {
die( print_r( sqlsrv_errors(), true));
}
$name = sqlsrv_get_field( $stmt, 0);
echo $name; //maybe the name is "George"