2012-09-24 3 views
10

Ich habe Zend Framework 2 Skelett-Anwendung ausprobiert und es funktioniert gut in Zend Server 5.6 (PHP Version 5.4.0 Apache 2.2.21 MYSQL 5.0.10). Aber ich will Zend Framework 2 mit MS SQL verbinden 2008 habe ich versucht, die folgenden, aber es nicht und wirft Ausnahme funktioniert „Ein ungültiger Parameter an sqlsrv_execute übergeben wurde.“Zend Framework 2 Microsoft SQL Server 2008 DB Verbindung

'db' => array(
    'driver' => 'sqlsrv', 
    'hostname' => 'testserver\test', 
    'Database' => 'payroll', 
    'UID'  => 'sa', 
    'PWD'  => '123456' 
), 

, was ist falsch mit über db-Array ? Bitte machen Sie mich mit dem richtigen Verbindungszeichenfolge

FYI:

i getestet PHP 5.4 und MS SQL 2008-Anschluss und es funktioniert gut, wird die folgende Verbindung erfolgreich hergestellt wurde.

/* 
$serverName = "testserver\test"; //serverName\instanceName 
$connectionInfo = array("Database"=>"payroll", "UID"=>"sa", "PWD"=>"123456"); 
$conn = sqlsrv_connect($serverName, $connectionInfo); 
if($conn) { 
    echo "---------- Connection established --------------------.<br />";  
    $sql = "select * from users"; 
    $stmt = sqlsrv_query($conn, $sql); 
    while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) { 
      echo $row['id'].", ".$row['username']."<br />"; 
    }  
} else{ 
    echo "Connection could not be established.<br />"; 
    die(print_r(sqlsrv_errors(), true)); 
} 
*/ 
+0

Endlich habe ich es funktioniert. 'driver' => 'pdo', 'dsn' => 'sqlsrv: datenbank = abrechnung; Server = testserver \ test', – user1692442

+5

Sie sollten in der Lage sein, dies als Antwort unten zu posten und zu akzeptieren. Das ist akzeptabel. – ficuscr

+5

Bitte tun Sie das, Sie verstopfen es als unbeantwortetes Thema. – nimdil

Antwort

1

Da Sie nicht Ihre eigene Frage technisch "beantwortet" haben, werde ich es für Sie tun.

diese Verbindungsparameter Versuchen Sie, könnten sie PDO arbeiten mit:

'db' => array(
    'driver' => 'pdo', 
    'dsn'  => 'sqlsrv:database=payroll;Server=testserver\test', 
    'username' => 'sa', 
    'password' => '123456' 
), 
0

In Ihrem global.php Datei die folgenden Verbindung Detail hinzufügen:

'db' => array(
     'driver' => 'Sqlsrv', 
     'hostname' => 'SERVERNAME', 
     'Database' => 'DBNAME', 
     'uid' => 'username', 
     'pwd' => 'password', 
) 

sqlsrv Treiber hinzuzufügen, es herunterladen von url : http://www.microsoft.com/en-us/download/details.aspx?id=20098

Add-Erweiterung in Ihrer pHP-ini-Datei wie folgt und starten Sie apache-Server:

extension = php_sqlsrv_53_ts.dll