sql >> データベース >  >> RDS >> Mysql

Laravel:未定義のインデックス:ドライバー

    エラーは、driverが欠落しているためです。 構成内。

    接続を変更するより良い方法は、データベース構成ファイルに新しい接続を登録し、実行時に接続を変更することです。

    'connections' => [
    
        'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,
        ],
    
        'newConnection' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => 'db2',
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,
        ],
    ]
    

    これで、新しい接続の定義に使用した名前を使用して接続を変更できます。

    デフォルトの接続を変更する

    Config::set('database.default', 'newConnection');
    DB::reconnect('newConnection');
    

    またはクエリビルダーの接続を変更します

    DB::connection('newConnection')->table('articles')->insert($articles);
    

    または、Eloquentモデルを使用している場合は、connectionを使用してモデルに関連付けられたデフォルトの接続を設定できます。 プロパティ

    protected $connection = 'newConnection';
    

    または、実行時にsetConnectionを呼び出して変更します

    (new User)->setConnection('newConnection');
    

    現在の接続の詳細を変更したい場合は、必要に応じて変更できます

    Config::set('database.connections.mysql.database', 'db2');
    

    変更後は電話する必要があります

    DB::reconnect('mysql');
    

    または

    DB::purge('mysql');
    


    1. mysql:フィールドの長さを切り捨てる方法

    2. カンマ区切りの値をOracleの列に分割します

    3. OracleDatabaseのFORALLステートメントの概要

    4. Yiiで日付をNULLに設定するにはどうすればよいですか?