kkszymanowski / laravel-6-firebird
A Firebird database package for Laravel 6
Installs: 15 560
Dependents: 0
Suggesters: 0
Security: 0
Stars: 30
Watchers: 7
Forks: 3
Open Issues: 3
Requires
- php: >=7.2.0
- ext-pdo: *
- illuminate/database: >=6.0
- illuminate/support: >=6.0
This package is auto-updated.
Last update: 2024-11-29 00:52:20 UTC
README
Package inspired by jacquestvanzuydam/laravel-firebird but simplified, modernized and made compatible with Laravel 6, 7 and 8.
I do not create my own Firebird databases, only read from existing ones so the INSERT and UPDATE support may be spotty.
Installation
composer require kkszymanowski/laravel-6-firebird
Add you database configuration in config/database.php
'connections' => [ 'myFirebirdConnection' => [ 'driver' => 'firebird', 'host' => env('DB_FIREBIRD_HOST', 'localhost'), 'port' => env('DB_FIREBIRD_PORT', '3050'), 'database' => env('DB_FIREBIRD_DATABASE', '/path_to/database.fdb'), 'username' => env('DB_FIREBIRD_USERNAME', 'SYSDBA'), 'password' => env('DB_FIREBIRD_PASSWORD', 'masterkey'), 'charset' => env('DB_FIREBIRD_CHARSET', 'UTF8'), ], // ... ],
Add the DB_FIREBIRD_*
environment variables to your .env
file, for example:
DB_FIREBIRD_HOST=192.168.0.1
DB_FIREBIRD_PORT=3050
DB_FIREBIRD_DATABASE=C:/DB.FDB
DB_FIREBIRD_USERNAME=user
DB_FIREBIRD_PASSWORD=password
DB_FIREBIRD_CHARSET=ISO-8859-2
Usage
Eloquent as model
To override your default database connection define $connection
name in your Eloquent Model
/** * The connection name for the model. * * @var string */ protected $connection = 'myFirebirdConnection';
After defining connection name you can use it in normal way as you use Eloquent:
$user = User::where('id', 1)->get(); $users = User::all();
DB Query
Each time you have to define connection name (if it isn't your default one), for example:
$sql = 'SELECT * FROM USERS WHERE id = :id'; $bindings = ['id' => 1]; $user = DB::connection('myFirebirdConnection')->select($sql, $bindings); $users = DB::connection('myFirebirdConnection')->table('USERS')->select('*')->get();