2014-09-19 63 views
0

希望一切都很好。我有一個MS Sql數據庫,我想在PHP中使用。我的PHP版本是5.4,所以我已經在PHP中安裝了PHP驅動程序和Sql Server'php_sqlsrv_54_ts.dll'。 Beow是我的代碼:在Microsoft驅動程序中使用德語字符作爲SQL Server的PHP

 $serverName = "Myserver"; 
    $connectionInfo = array("Database"=>"database", "UID"=>"userid", "PWD"=>"password"); 
    $conn = sqlsrv_connect($serverName, $connectionInfo); 
    if($conn === false) { 
     die(print_r(sqlsrv_errors(), true)); 
    } 

    $sql = "select * from AVE_Stamm WHERE Strasse='Friesenstraße 20'"; 
    $stmt = sqlsrv_query($conn, $sql); 
    if($stmt === false) { 
     die(print_r(sqlsrv_errors(), true)); 
    } 

    while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) { 
      echo $row['Firma'].", ".$row['Strasse']."<br />"; 
    } 

    sqlsrv_free_stmt($stmt); 

我現在面臨的問題是,當我用德語元音像O,A,U,SS在where子句中,查詢不返回我任何數據。但沒有,我得到的數據。請讓我知道如何解決這個問題。

Regards

+0

你試過[UTF-8](http://en.wikipedia.org/wiki/UTF-8)? – Jonast92 2014-09-19 08:28:10

+0

Thansks Jonast92爲您的答覆。是的,我有,但仍然沒有結果。 – 2014-09-19 08:30:36

回答

0

您應該在爲數據庫搜索創建表時指定排序規則。 作爲本地修訂,現在,你可以更改有關表 覈對(或僅其"value"柱)"utf8_bin",它會工作:)

+0

當我從SQL Server Management Studio查詢相同的查詢時,它工作正常。 – 2014-09-19 08:33:27

+0

看到它總是取決於您使用SQL查詢的數據庫。所以我以爲你在Mysql中使用php,而在MYSQL中,你可以通過修改「utf8_bin」來解決這個問題,它會讀取任何不同語言的字符。 – 2014-09-19 08:35:13

相關問題