Use ODBC to connect with your SQL Server instances from Laravel 5+.
This package allows you to use the OFFICIAL Microsoft SQL Server ODBC driver to connect to a Microsoft SQL Server database.
Disclaimer: all Bash commands you will see here are examples for RHEL/CentOS Yum package manager. If you would like to help make these docs more friendly with other distros, please make sure to either submit a pull request on the README or open an issue with additional commands specifying which distro you are using and I'll then update the README docs.
sudo yum install -y unixodbc
sudo yum install -y php-odbc
You can find specific instructions for your distro here: https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server
Install with composer
composer require techscope/laravel-sqlserver:dev-master
Add the Service Provider to config/app.php
TechScope\SqlServer\SqlServerServiceProvider::class
Make sure to update your config/database.php file
'domdb' => [
'driver' => 'sqlsrv',
'odbc_driver' => '{ODBC Driver 13 for SQL Server}',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'port' => env('DB_PORT', '1433'),
'TrustServerCertificate' => 'yes'
],
IMPORTANT NOTES:
driver
should be set to sqlsrv
. This uses the preexisting SQL Server grammar that ships with Laravel.odbc_driver
should be the name of the ODBC Driver as it appears in /etc/odbcinst.ini
. Example:
[ODBC Driver 13 for SQL Server] <--- USE THIS LINE OR SIMILAR DEPENDENDING ON WHICH VERSION YOU INSTALL
Description=Microsoft ODBC Driver 13 for SQL Server
Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.1.so.8.0
UsageCount=1
config/database.php
host
, database
, username
, password
, port
properties to properly setup the DSN string for the ODBC ConnectionAddress
, Addr
, Database
, Server
, UID
, PWD
, Network
, Net
, DSN
and Database
properties cannot be used here and will be ignored as they are already specified the Laravel way