Langsung ke konten utama

Koneksi Multiple Database Laravel 10

Saat bekerja untuk membangun sebuah web, tidak jarang kita ingin untuk menghubungkan aplikasi kita dengan dua database atau lebih. Artikel berikut ini akan membantu Anda untuk menghubungkan Laravel dengan dua database atau lebih yang memang Anda butuhkan untuk membangun web

berikut adalah cara-cara yang bisa Anda ikuti


  1. Buka file .env
  2. Copy file yang menggunakan DB Connection


DB_CONNECTION=sqlsrv
DB_HOST=127.0.0.1
DB_PORT=1433
DB_DATABASE=company
DB_USERNAME=sa
DB_PASSWORD=password_anda

DB_CONNECTION_MYSQL=mysql
DB_HOST_MYSQL=127.0.0.1
DB_PORT_MYSQL=3306
DB_DATABASE_MYSQL=employee
DB_USERNAME_MYSQL=root
DB_PASSWORD_MYSQL=


3. Buka file config/database.php
4. Di row connections, bagian ,mysql, ubah database, username, dan password sesuai dengan penamaan yang sudah dibuat sebelumnya

 'mysql' => [
            'driver' => 'mysql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST_MYSQL', '127.0.0.1'),
            'port' => env('DB_PORT_MYSQL', '3306'),
            'database' => env('DB_DATABASE_MYSQL', 'forge'),
            'username' => env('DB_USERNAME_MYSQL', 'forge'),
            'password' => env('DB_PASSWORD_MYSQL', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'prefix_indexes' => true,
            'strict' => true,
            'engine' => null,
            'options' => extension_loaded('pdo_mysql') ? array_filter([
                PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
            ]) : [],
        ],

5. Pastikan Anda sudah menentuka default koneksi yang akan Anda gunakan. Sebagai contoh dalam case ini, default koneksi yang digunakan adalah SQL server.

6. kemudian pindah ke bagian model, di dalam Model Anda, buatlah variabel seperti di bawah ini. Hal ini untuk menentukan default koneksi database yang digunakan dalam query yang dituliskan selanjutnya

protected $connection = 'sqlsrv';

Sehingga untuk penulisan function yang mengarah ke SQL Server, Anda dapat menuliskannya seperti biasa di bawah ini


    public function getCompanyDetail($id){
        $query = DB::table('company')
                    ->select('*')
                    ->where('id', $id)
                    ->get();
       
        return $query;
    }


Namun, untuk koneksi ke server atau database yang berbeda, bisa sesuai dengan penulisan berikut ini

 public function employee($id){
        $query = DB::connection('mysql')
                ->table('employee')
                ->select('*')
                ->where('id', $id)
                ->get();
        return $query;
    }

Anda harus menambahkan nama koneksi yang Anda buat sebelumnya sebelum menuliskan query, seperti di bawah ini:

 $query = DB::connection('mysql')


Demikian cara untuk koneksi multiple database di Laravel 10. Sampai jumpa di tutorial selanjutnya.

Selamat mencoba

Komentar

Postingan populer dari blog ini

Koneksi Laravel ke SQL Server dan XAMPP

 Untuk melakukan koneksi ke SQL Server dari Laravel, silahkan ikuti langkah di bawah ini I. SETTING BAGIAN XAMPP DAN PHP 1. Pastikan driver sudah terpasang di XAMPP, jika belum terpasang, silahkan ikuti cara di bawah ini a. Download SQL Server PHP Driver b. Extract driver sesuai dengan folder php yang diinstal. Untuk XAMPP, extract folder di      .\xampp\ php\ext c. Buka file php.ini kemudan tambahkan script di bawah ini sesuaikan dengan versi PHP yang saat ini terinstal extension=php_sqlsrv_82_nts_x64.dll extension=php_pdo_sqlsrv_82_nts_x64.dll Simpan file php.ini kemudian restart apache service 1. Ganti Setting di Config Database menjadi seperti di bawah ini 2.Setting bagian di .env seperti di bawah ini. Karena kita menggunakan database yang ada di lokal, silahkan masukkan IP localhost.  3. Jalankan command di bawah ini di terminal VS Code php artisan migrate Jika terjadi error di bawah ini, silahkan ikuti langkah berikut     a. Enable TCP/IP pada ...

Upload file PHP ke server dengan versi yang lebih rendah

  Case ini berlaku jika Anda melakukan upload file php dari versi PHP yang lebih tinggi ke versi PHP yang lebih rendah di server ( dalam kasus saya, dari PHP versi 7.4.0 di localhost saya, ke versi 7.3.14 di server) Pastikan Anda sudah menginstall composer sebelumnya, jika belum menginstall composer, silahkan install terlebih dahulu di sini. Editor yang saya gunakan adalah Visual Studio Code, Anda bisa mengunduhnya di sini Langkah-langkah yang dapat Anda ikuti adalah sebagai berikut: Di server, buka folder yang Anda upload melalui Visual Studio Code Buka menu Terminal -> New Terminal Pada terminal, silahkan masuk ke directory dimana folder program Anda disimpan di server.Contoh saat ini program saya dengan folder "kaizen__" saya simpan di  \\server_host\webprogram\htdocs maka saya mengarahkan terminal saya untuk menuju ke folder tersebut dengan                          cd webprogram   ...