Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Kết nối với nhiều cơ sở dữ liệu đồng thời trong Laravel 5.2

Giới thiệu - 2 kết nối

Giả sử bạn cần 2 kết nối: mặc định tùy chỉnh , bạn sẽ cung cấp cấu hình của họ trong config/database.php của mình như thường lệ, sau đó bạn cần:

>>> DB::connection()->getDatabaseName()
=> "default"

>>> DB::connection('custom')->getDatabaseName()
=> "customized"

// change the config...
>>> config(['database.connections.custom.database' => 'new_customized_db'])
=> null

// ...but once the connection is already open, config change doesn't affect it...
>>> DB::connection('custom')->getDatabaseName()
=> "customized"

// ...so we need to get rid of existing connection completely (reconnect() won't work)
>>> DB::purge('custom')
=> null

>>> DB::connection('custom')->getDatabaseName()
=> "new_customized_db"

Kết nối khác

Ở trên bạn có thể thấy những gì cần phải làm. Trong trường hợp của bạn, bạn có thể chỉ cần đặt toàn bộ cấu hình kết nối cho mỗi kết nối mới bạn cần và nó sẽ hoạt động như mong đợi:

>>> config(['database.connections.on_the_fly' => [
>>>    'database' => 'provided_on_the_fly',
>>>    ...
>>> ]])
=> null

>>> DB::connection('on_the_fly')->getDatabaseName()
=> "provided_on_the_fly"

Hùng biện

Nếu bạn muốn sử dụng kết nối tùy chỉnh cho Mô hình hùng hồn của mình bạn có thể sử dụng SomeModel::on('on_the_fly')->find($id) (mô hình được tìm nạp phiên bản sẽ sử dụng kết nối cho tất cả các hoạt động tiếp theo)




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. DriverManager không có trình điều khiển phù hợp mysql

  2. Tải lên nhiều hình ảnh sai số lượng khi tải lên tệp

  3. Phân trang trong PDO PHP

  4. MySQL:YÊU CẦU SSL không được hiển thị trong tài trợ

  5. Cách khôi phục tệp SQL do MySQLDump tạo bằng dấu nhắc lệnh