Yii2:检查数据库中是否存在ActiveRecord模型
答
在Yii2您可以添加exists()
到您的查询链:
User::find()
->where([ 'id' => 1 ])
->exists();
(生成的SQL是这样的:SELECT 1 FROM `tbl_user` WHERE `id`=1
)
这里也是Query->exists()
取自the Yii2 source.
/**
* Returns a value indicating whether the query result contains any row of data.
* @param Connection $db the database connection used to generate the SQL statement.
* If this parameter is not given, the `db` application component will be used.
* @return boolean whether the query result contains any row of data.
*/
public function exists($db = null)
{
$select = $this->select;
$this->select = [new Expression('1')];
$command = $this->createCommand($db);
$this->select = $select;
return $command->queryScalar() !== false;
}
答
if(Mastersettings::find()->where(['id'=>1,'status'=>1])->exists())
{
//....... Your code Here ......
}
http://yii2ideas.blogspot.in/2017/06/yii2-database-operations.html