PHP操作SQL Server方法----連接和sql語句需要注意的問題

字號+ 編輯: 种花家 修訂: 人在硅谷 來源: 原创 2023-09-12 我要說兩句(0)

php操作sql server的代碼demo, 還有報Failed to get DB handle: SQLSTATE[IMSSP]: This extension requires the Microsoft ODBC Driver 11 for SQL Server to communicate with SQL Server. Access the following URL to download the ODBC Driver 11 for SQL Server for x86: http://go.microsoft.com/fwlink/?LinkId=163712的故障錯誤

<?php
$serverName = "服務器名稱\SQLEXPRESS";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password" );
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false ) {
     die( print_r( sqlsrv_errors() );
}

$sql = "INSERT INTO Table_1 ( [id], [data] ) VALUES (?, ?)";
$params = array(1, "some data");

$stmt = sqlsrv_query( $conn, $sql, $params);
if( $stmt === false ) {
     die( print_r( sqlsrv_errors() );
}

執行sql語句使用的是sqlsrv_query方法, 第一個參數需要傳數據庫連接符, 第二個參數是sql語句結構綁定式, 第三個參數是語句内要綁定進的問號參數值。


這裡說一下SQL Server的sql和MySQL語句在遇到字段和SQL關鍵字相同的解決。MySQL是在字段前後加上一對`(鍵盤數字1左邊)符號來告訴服務耑這是字段, SQL Server是在字段前後加上中括號[]來解決。如果可以不撞上關鍵字盡量不要使用關鍵字來當表字段名。


5.6的ODBC敺動故障

就算php5.6安裝了對應的擴展, 也會報錯, 連接數據庫時返回錯誤當中會含有Failed to get DB handle: SQLSTATE[IMSSP]: This extension requires the Microsoft ODBC Driver 11 for SQL Server to communicate with SQL Server. Access the following URL to download the ODBC Driver 11 for SQL Server for x86: http://go.microsoft.com/fwlink/?LinkId=163712字樣, 不要聽信報錯信息裡的這個鏈接, 實際正確的下載鏈接是https://www.microsoft.com/en-us/download/details.aspx?id=36434

閲完此文,您的感想如何?
  • 有用

    3

  • 沒用

    2

  • 開心

    2

  • 憤怒

    2

  • 可憐

    2

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: 2702237 13835667

相關課文
  • mac開發接入微信公衆號接口返回報錯 cURL error 56: SSLRead() return error -9806

  • PHP的換行符是什麽

  • pecl安裝程序時報錯Array and string offset access syntax with curly braces is no longer supported

  • 由於商家傳入的H5交易參數有誤,該筆交易暫時無法完成,請聯繫商家解決

我要說說
網上賓友點評