Biasanya saya membuat program Laravel dengan menggunakan database MySQL seperti program-program PHP normalnya. Namun ada kalanya database yang digunakan bukan menggunakan MySQL namun menggunakan SQL Server seperti yang saya alami baru-baru ini. Pada artikel kali ini saya akan menjelaskan bagaimana cara menghubungkan Laravel 5.5 dengan database SQL Server. Database yang saya gunakan di sini adalah SQL Server 2008 R2 dan juga menggunakan Windows 7 32 bit.
Berikut ini adalah file-file yang perlu anda download dan install terlebih dahulu :
- Microsoft® ODBC Driver 11 for SQL Server® - Windows. File ini dapat anda download pada link berikut ini : https://www.microsoft.com/en-us/download/details.aspx?id=36434. Pilihlah versi yang sesuai dengan windows anda apakah menggunakan 32 bit atau 64 bit. Setelah selesai terdownload jangan lupa untuk menginstall file tersebut.
- PHP Drivers for SQL Server. File ini dapat anda download melalui link berikut : https://github.com/Microsoft/msphpsql/releases. Dalam halaman tersebut terdapat banyak file untuk berbagai macam OS dan versi PHP 7 yang ada. Downloadlah file yang tentu saja sesuai dengan OS dan versi PHP yang anda gunakan.
Setelah selesai mendownload semua file yang diperlukan, langkah selanjutnya adalah mengekstrak file PHP Drivers for SQL Server yang telah anda download sebelumnya. Di dalam direktori tersebut terdapat 2 versi file yaitu untuk 32 bit dan 64 bit (dalam kasus ini saya mendownload untuk windows dengan versi PHP 7.2). Kemudian copylah 2 file dalam direktori tersebut yaitu
- php_pdo_sqlsrv_72_ts.dll
- php_sqlsrv_72_ts.dll
Letakkan ke 2 file di atas di dalam direktori ext php yang anda gunakan. Di sini saya menggunakan XAMPP dan saya mengcopy ke 2 file tersebut ke dalam direktori xampp/php/ext. Di dalam direktori tersebut terdapat berbagai macam file dll lainnya. Kemudian bukalah file php.ini (jika anda menggunakan xampp file ini terletak pada direktori xampp/php) dan tambahkan baris kode berikut :
extension=php_pdo_sqlsrv_72_ts.dll
extension=php_sqlsrv_72_ts.dll
Langkah terakhir yang perlu dilakukan selanjutnya adalah melakukan konfigurasi pada program Laravelnya. Sebagai informasi secara default Laravel 5.5 ini sudah menyediakan konfigurasi database dengan menggunakan SQL Server. Untuk memastikan konfigurasi tersebut bukalah file database.php yang terdapat di dalam direktori config. Didalam file tersebut pastikan terdapat baris kode berikut :
'sqlsrv' => [
'driver' => 'sqlsrv',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '1433'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'prefix' => '',
],
Baris kode di atas adalah konfigurasi dari koneksi ke database SQL Server yang akan kita gunakan selanjutnya. Yang perlu anda lakukan adalah menyesuaikan isi dari variabel pada file .env program yang anda buat. Berikut ini adalah contoh isi dari file .env yang saya gunakan
DB_CONNECTION=sqlsrv
DB_HOST=127.0.0.1
DB_PORT=1433
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
Yang perlu anda ubah yang paling utama adalah pada variabel DB_CONNECTION. Ubahlah sesuai dengan nama koneksi pada file database.php yang telah dijelaskan sebelumnya (pada contoh ini adalah sqlsrv). Kemudian seperti biasanya hal berikutnya adalah menyesuaikan nama database, nama user dan password sesuai dengan konfigurasi pada SQL Server yang anda gunakan.
Sedangkan untuk perintah-perintah querynya dapat anda sesuaikan dengan syntax pada SQL Server, karena syntax-syntax pada SQL Server ada yang berbeda dibandingkan dengan MySQL. Untuk query dengan menggunakan Eloquent selama ini saya coba masih tidak ada perubahan (saya hanya mencoba perintah-perintah sederhana saja).
Demikianlah artikel Tutorial Laravel 5.5 - Menghubungkan Laravel dengan database SQL Server. Pada artikel selanjutnya saya akan menjelaskan bagaimana cara untuk mengkoneksikan program laravel dengan 2 database sekaligus. Semoga penjelasan yang saya berikan cukup jelas, silahkan gunakan fitur comment jika anda mempunyai pertanyaan mengenai artikel ini. Terima kasih.
comment 0 komentar
more_vert