SQLSRV查询无效

时间:2013-07-26 11:18:08

标签: php sql sql-server sqlsrv

我刚刚使用IIS和Microsoft SQL服务器设置了一台PHP服务器,这两台服务器都运行在同一台Windows Server 2008计算机上。我在PHP上安装了Microsoft的SQLSRV驱动程序,因为我想在PHP中使用我的SQL Server数据库。

连接到SQL Server实例在代码中运行正常,但是当我尝试执行查询时,它不再起作用。我尝试从php代码运行的相同查询正在其他程序中工作,例如我的SQL Server Manager。即使像'USE dbname'这样的简单命令也无效,而它们可以在SQL Server Manager中运行。

这是我正在使用的PHP代码。当我运行代码时,它说连接,然后错误选择数据库。

$conn = sqlsrv_connect("TRANSIP-VPS\SQLEXPRESS");
if( $conn === false )
  { die( FormatErrors( sqlsrv_errors() ) ); }
echo "Connected ";
      $selectDB = sqlsrv_query( $conn, "USE Vitare");
      if($selectDB === false){
        die("ERror selecting DB");  
      }

$tsql = "CREATE TABLE Persons
(
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)";
  $getProducts = sqlsrv_query( $conn, $tsql);
  if ( $getProducts === false)
        {
        echo "Error creating table";
        die( FormatErrors( sqlsrv_errors() ) ); }
echo "stuff";
$row = sqlsrv_fetch_array( $getProducts, SQLSRV_FETCH_ASSOC);
echo $row['username'];

当我运行sql_srverrors()而不是打印'错误选择数据库'时,它只给我“数组”这个词,仅此而已,没有错误消息,没有。

1 个答案:

答案 0 :(得分:0)

尝试连接数据库:

$serverName = "TRANSIP-VPS\SQLEXPRESS";
$connectionInfo = array( "Database"=>"Vitare" );
$conn = sqlsrv_connect( $serverName, $connectionInfo);