SQLExpress adalah salah satu edisi Microsoft SQL Server (MSSQL) yang didistribusikan secara gratis untuk para hobiest dan tujuan non komersial. Edisi terbaru dari SQLExpress adalah versi 2008, yang dipaketkan dengan Visual Studio 2010. Sejak PHP5 dirilis, dukungan komunitas untuk database MS-SQL tidak berkembang, hingga akhirnya Microsoft merilis sqlsrv untuk menggantikan ekstensi mssql yang sudah mandeg dikembangkan. Selain ekstensi mssql (dengan ntdwlib/DB_LIB) di Windows, akses PHP ke MS-SQL di Linux bisa dilakukan dengan FreeTDS dan Sybase.
Untuk pembahasan kali ini, kita akan belajar bagaimana mengakses database MS-SQL dengan PHP.
Instalasi SQLExpress
Untuk menginstall SQLExpress, anda butuh installernya yang dapat diunduh disini:
- Edisi SQLExpress 2005: http://www.microsoft.com/download/en/details.aspx?id=21844
- Edisi SQLExpress 2008: http://www.microsoft.com/download/en/details.aspx?id=26729
Install dengan klik ganda file tersebut, saat instalasi pastikan metode autentifikasi yang digunakan adalah campuran antara Windows Authentication dan SQL Server Authentication serta isi password dengan benar.
Instalasi Extension Microsoft SQL Server untuk PHP
Microsoft telah menyediakan driver Microsoft SQL Server yang berfungsi sebagai extension library PHP. Silakan unduh installernya dari:
Klik ganda file tersebut untuk melakukan instalasi, pilih tempat file-file extension PHP berada (Contoh: C:\xampp\php\ext) dan klik OK.
Langkah penting selanjutnya adalah mengaktifkan extension ini. Buka file php.ini (contoh: C:\xampp\php\php.ini) dengan editor teks. Tambahkan baris berikut:
extension=php_sqlsrv_52_ts_vc6.dllatau
extension=php_pdo_sqlsrv_52_ts_vc6.dll
Sesusaikan dengan versi PHP anda! Kemudian restart Webserver (Apache/XAMPP).
Koneksi PHP ke Microsoft SQLExpress
Ada dua metode autentifikasi yang diperbolehkan oleh SQLExpress, 1) berbasis akun Windows, dan 2) berbasis akun SQLExpress sendiri.
1. Koneksi PHP – MS-SQL dengan Windows Authentication
Contoh:
<?php
/* Specify the server and connection string attributes. */
$serverName = "(local)";
$connectionInfo = array( "Database"=>"AdventureWorks");
/* Connect using Windows Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
/* Query SQL Server for the login of the user accessing the
database. */
$tsql = "SELECT CONVERT(varchar(32), SUSER_SNAME())";
$stmt = sqlsrv_query( $conn, $tsql);
if( $stmt === false )
{
echo "Error in executing query.</br>";
die( print_r( sqlsrv_errors(), true));
}
/* Retrieve and display the results of the query. */
$row = sqlsrv_fetch_array($stmt);
echo "User login: ".$row[0]."</br>";
/* Free statement and connection resources. */
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>
Contoh diatas akan mengkoneksikan PHP ke MS-SQL dengan akun Windows pada basisdata AdventureWorks.
2. Koneksi PHP ke MS-SQL dengan SQL Server Authentication
Contoh:
<?php
/* Specify the server and connection string attributes. */
$serverName = "(local)";
/* Get UID and PWD from application-specific files. */
$uid = "sa";
$pwd = "12345";
$connectionInfo = array( "UID"=>$uid,
"PWD"=>$pwd,
"Database"=>"AdventureWorks");
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
/* Query SQL Server for the login of the user accessing the
database. */
$tsql = "SELECT CONVERT(varchar(32), SUSER_SNAME())";
$stmt = sqlsrv_query( $conn, $tsql);
if( $stmt === false )
{
echo "Error in executing query.</br>";
die( print_r( sqlsrv_errors(), true));
}
/* Retrieve and display the results of the query. */
$row = sqlsrv_fetch_array($stmt);
echo "User login: ".$row[0]."</br>";
/* Free statement and connection resources. */
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>
Contoh diatas akan mengkoneksikan PHP dengan MS-SQL dengan akun sa dengan password 12345 untuk basisdata AdventureWorks.
Selamat mencoba!
Incoming search terms:
- mssql php xampp
- mssql php
- koneksi php ke mssql
- error koneksi php ke sql server 2008
- belajar php sql server
- sql express
- konfigurasi WINDOWS SERVER 2008 KONEK TO PHP
- php dengan mssql
- cara php konek to mssql
- koneksi php ke sql server 2008
Tulisan Menarik Lainnya
4 Comments on “Belajar PHP: PHP dan Microsoft SQLExpress (MSSQL)”
You can track this conversation through its atom feed.
mantab tutorialnya om. saya kebetulan juga sedang belajar koneksi ke MS-SQL dengan PHP, untuk akses database lokal(komputer sendiri) udah sukses, tapi klo buat akses database lain (remote) ada error Login failed for user ‘NT AUTHORITY\\ANONYMOUS LOGON’, itu yg kurang di kode phpnya atau MS-SQL tujuan ya? mohon infonya ya..trims
Posted on October 21, 2011 at 8:13 am.
sepertinya koneksi ke database remote yang bermasalah, jika anda berkenan mengaksesnya dg windows authentication buat user juga disana. NT AUTHORITY\\ANONYMOUS LOGON setahu saya berarti anda tidak menggunakan user yg cocok di database remote itu, atau database remote itu belum dikonfigurasi supaya dapat diakses secara remote. salam.
Posted on October 21, 2011 at 12:43 pm.
oww berarti harus konfigurasi MS-SQL tujuan nya ya. oke om saya coba dulu setting di MS-SQL nya,dengan user yang cocok.. ini user window ya om patokannya?terimakasih responnya, cepat juga di respon.
Posted on October 22, 2011 at 9:22 am.
ada dua cara koneksi user, bisa pake Windows-based (user Windows) atau pake user MS-SQL sendiri.
Posted on October 23, 2011 at 6:32 am.