YII2 Ajax多个DB连接

时间:2016-03-15 13:31:48

标签: yii2 multi-database

我正在使用ajax使用YII2.0多个数据库连接,我有多个数据库,如account,customer_1,customer_2..customer_n 在具有用户表的帐户数据库中,该表中的每个用户都具有相应的数据库。

基于user_id,我想使用ajax.is连接数据库,有可能做到这一点。

提前感谢您的想法和建议。

1 个答案:

答案 0 :(得分:0)

您可以执行与以下类似的操作来创建运行时数据库连接。您需要从主数据库获取正确的dbname和其他详细信息以创建低于临时连接

//create temp db connection
            $config_temp = [
                'components' => [
                    'tempdb' => [
                        'class' => 'yii\db\Connection',
                        'dsn' => 'mysql:host=HOSTNAME;dbname=DBNAME',
                        'username' => USERNAME,
                        'password' => PWD,
                        'charset' => 'utf8',
                    ],
                ],
            ];
            $odb = Yii::createObject($config_temp['components']['tempdb']);
            //link user group for current org
            $sql = "SQL STATEMENT";
            $command_temp = $odb->createCommand($sql);