zoukankan      html  css  js  c++  java
  • Yii basic 模板支持连接多数据库

    1.首先修改db配置文件,修改格式如下:

    return [
        'db' => [
                'class' => 'yiidbConnection',
                'dsn' => 'mysql:host=localhost;dbname=zjj',
                'username' => 'root',
                'password' => 'root',
                'charset' => 'utf8',
        ],
        'db_new' => [
            'class' => 'yiidbConnection',
            'dsn' => 'mysql:host=localhost;dbname=new_db',
            'username' => 'root',
            'password' => 'root',
            'charset' => 'utf8',
        ],
        // Schema cache options (for production environment)
        //'enableSchemaCache' => true,
        //'schemaCacheDuration' => 60,
        //'schemaCache' => 'cache',
    ];


    2.修改完成后,防止报错,需要在web.php里增加如下配置:

    //多个数据库连接需要合并输出
    $config['components'] = array_merge($config['components'],$db);
    return $config;

    3.修改完成后报错信息应该就不会有了,下面就可以使用多数据获取数据:

       1.使用原生查询

    $sql = "select * from article where id = 5214";
    $new_db = Yii::$app->db_new->createCommand($sql)->queryAll();

     2.使用gii生成model

    点击生成就可以了。注意:db_new 要和db配置文件里面的保持一致;到这里就完成多配置了!

    4.生成的model可以和之前的model不一样,区别就是下面的区别:

        /**
         * @return yiidbConnection the database connection used by this AR class.
         */
        public static function getDb()
        {
            return Yii::$app->get('db_new');
        }

    多了一行返回数据库信息

  • 相关阅读:
    UVA 11987 几乎就是并查集= =
    UVALive 5908 更新一下线段相交模板
    【poor几何】UVALive 5908 更新一下线段相交模板
    【poor几何】UVALive 5908 更新一下线段相交模板
    UVALive 3634 熟悉一下STL
    UVALive 3634 熟悉一下STL
    UVALive 3634 熟悉一下STL
    hdu2665 主席树模板题
    hdu2665 主席树模板题
    迷宫问题 POJ
  • 原文地址:https://www.cnblogs.com/lixiansen/p/11190407.html
Copyright © 2011-2022 走看看