yii2 直接输出model的(active record)sql语句

101 篇文章 0 订阅

得到yii2模型的sql输出


$query = Salesorder::find()
  ->where(['order_id'=>[1,2,3,4]])
  ->select(['order_id'])
;
// get the AR raw sql in YII2
$commandQuery = clone $query;
echo $commandQuery->createCommand()->getRawSql();
exit;



echo  Salesorder::find()
  ->where(['order_id'=>[1,2,3,4]])
  ->select(['order_id'])
 ->createCommand()->getRawSql();


Yii2框架的Active Record是一个强大的ORM(对象关系映射)工具,它可以将数据库中的表映射成为Yii2框架中的PHP类,并且提供了一系列的API来进行对数据库的操作。 下面是一些常用的Active Record操作: 1. 查询单条记录: ```php $model = ModelName::findOne($id); ``` 2. 查询多条记录: ```php $models = ModelName::find()->where(['attribute' => 'value'])->all(); ``` 3. 插入记录: ```php $model = new ModelName(); $model->attribute = 'value'; $model->save(); ``` 4. 更新记录: ```php $model = ModelName::findOne($id); $model->attribute = 'new value'; $model->save(); ``` 5. 删除记录: ```php $model = ModelName::findOne($id); $model->delete(); ``` 6. 自定义查询: ```php $models = ModelName::find()->select(['attribute1', 'attribute2'])->asArray()->all(); ``` 上述代码中,`ModelName`是你定义的Active Record类名,`findOne()`方法用于查找单条记录,`find()`方法用于查找多条记录,`where()`方法用于设置查询条件,`all()`方法返回所有查询结果,`new`关键字用于创建新的Active Record实例,`save()`方法用于保存数据到数据库中,`delete()`方法用于删除数据,`select()`方法用于指定查询的列,`asArray()`方法用于返回查询结果数组而不是Active Record对象。 需要注意的是,Active Record还提供了一些高级的操作,如关联查询、批量操作、查询缓存等。详细的信息可以参考Yii2官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值