如何在yii2中设置查询生成器的连接?
我想使用QueryBuilder:如何在yii2中设置查询生成器的连接?,yii2,Yii2,我想使用QueryBuilder: $rows = (new \yii\db\Query()) ->select('id, name') ->from('user') ->limit(10) ->all(); 使用非默认连接: \Yii::$app->get('db_mysql') 如何正确地执行此操作?使用: $rows = (new \yii\db\Query()) ->select('id, name')
$rows = (new \yii\db\Query())
->select('id, name')
->from('user')
->limit(10)
->all();
使用非默认连接:
\Yii::$app->get('db_mysql')
如何正确地执行此操作?使用:
$rows = (new \yii\db\Query())
->select('id, name')
->from('user')
->limit(10)
->all(\Yii::$app->db_mysql);
当然,您必须在配置中设置db_mysql
组件
文件:
在您的模型创建方法中
/**
* @return \yii\db\Connection the database connection used by this AR class.
*/
public static function getDb()
{
return Yii::$app->get('db_mysql');
}
之后
$rows = (new \yii\db\Query())
->select('id, name')
->from('user')
->limit(10)
->all(YourModel::getDb());
或
在您的模型上下文中您想要设置新连接我为您提供了新连接的解决方案
$rows = (new \yii\db\Query())
->select('id, name')
->from('user')
->limit(10)
->all(YourModel::getDb());
$rows = (new \yii\db\Query())
->select('id, name')
->from('user')
->limit(10)
->all(static::getDb());