【发布时间】:2017-09-06 01:48:39
【问题描述】:
我正在尝试从 MS SQL 2008 服务器查询数据。我正在从 SQL 视图 查询数据。不是 SQL 表。
有谁知道 SQLSRV 是否能够从 SQL Server 查询视图?
下面的示例代码。在我使用 Table 时有效,但在使用 SQL View 时无效。
我正在使用 PHP 版本 7 和 MS SQL 2008 R2。
连接
$serverName = "LOC-SVR\SQLEXPRESS"; //serverName\instanceName
$connectionInfo = array( "Database"=>"dbName","UID" => "svc_test","PWD" => "test");
$connect = sqlsrv_connect( $serverName, $connectionInfo);
查询代码
$sql = "SELECT Col1
, Col2
, Col3
FROM V_TEST_VIEW;";
sqlsrv_configure('WarningsReturnAsErrors', 0);
sqlsrv_query($connect,$sql);
$res = sqlsrv_query($connect, $sql, array(), array( "Scrollable" => SQLSRV_CURSOR_KEYSET ));
while ($row = sqlsrv_fetch_array($res, SQLSRV_FETCH_ASSOC))
{
echo $row['Col1'];
echo $row['Col2'];
echo $row['Col3'];
}
结果
没有错误。视图只返回 1 行。在 Microsoft SQL Server Management Studio 中,会返回几百行。
感谢任何帮助。
【问题讨论】:
-
我使用 View whith MS SQL PostgreSQL 和 MYSQL 并且 createad 之后的视图被视为表格。唯一的区别在于您如何创建、更改和销毁它们。
-
您创建的视图的代码在哪里?
标签: php sql-server sql-server-2008 php-7 sqlsrv