blsa点cn 2016-10-11 14:45:50 47486次浏览 7条评论 20 4 0

一、新增

使用model::save()操作进行新增数据

$user= new User;         
$user->username =$username;  
$user->password =$password;  
$user->save()

使用createCommand()进行新增数据

Yii::$app->db->createCommand()->insert('user', [  
    'name' => 'test',  
    'age' => 30,  
])->execute();

批量插入数据

Yii::$app->db->createCommand()->batchInsert('user', ['name', 'age'], [  
    ['test01', 30],  
    ['test02', 20],  
    ['test03', 25],  
])->execute();

二、修改

使用model::save()进行修改

$user = User::find()->where(['name'=>'test'])->one(); //获取name等于test的模型
$user->age = 40; //修改age属性值
$user->save();   //保存

直接修改:修改用户test的年龄为40

$result = User::model()->updateAll(['age'=>40],['name'=>'test']);

使用createCommand()修改

Yii::$app->db->createCommand()->update('user', ['age' => 40], 'name = test')->execute();

三、删除

使用model::delete()进行删除

$user = User::find()->where(['name'=>'test'])->one(); 
$user->delete();

直接删除:删除年龄为30的所有用户

$result = User::deleteAll(['age'=>'30']);

根据主键删除:删除主键值为1的用户

$result = User::deleteByPk(1);

使用createCommand()删除

Yii::$app->db->createCommand()->delete('user', 'age = 30')->execute();

如有错误,请指出,自己也做个小笔记,谢谢大家

觉得很赞

Yii用户专享10000元红包

Yii开发者福利,万元红包可用于云服务器、高防服务器、裸金属服务器、云数据库、高防IP购买和续费

  • 评论于 2016-10-13 15:56 举报

    根据主键删除:删除主键值为1的用户

    $result = User::deleteByPk(1);
    

    大兄弟 我框架全局搜索 没这个 deleteByPk()方法啊 自定义的?

    3 条回复
    评论于 2016-10-13 16:28 回复
    User::findOne($id)->delete();
    

    删除主键为 $id变量 值的数据库;
    用这个呢

    评论于 2016-10-13 17:56 回复

    好的 这样就明白了 免得后来的人看了一头雾水 (:3 」∠)

    评论于 2016-10-13 23:12 回复

    @Yoke 抱歉啊,现在不知道为啥不能修改,等能修改了把这个修改过来

    觉得很赞
  • 评论于 2016-11-04 08:24 举报

    有没有直接获取某个字段值得方法的,例如:

    User::find()->where(['uid'=>'1'])->getField('username'); // 返回 admin
    
    2 条回复
    评论于 2017-03-03 17:43 回复

    User::find()->select('user_id,user_name')->where(['uid'=>'1'])->asArray()->one() 这样可以返回指定的查询字段

    评论于 2017-09-25 09:06 回复

    User::find()->select('username')->where(['uid'=>'1'])->scalar(); // 返回 username

  • 评论于 2016-11-04 08:25 举报
    User::getlastsql();  User::getError(); // 返回最后操作的SQL语句,主要是便于调试
    
    1 条回复
    评论于 2017-09-25 15:07 回复

    为什么我用你这两个方法报错,说没有这个方法

  • 评论于 2017-01-04 08:53 举报

    增删改,查呢

  • 评论于 2017-09-19 18:51 举报

    6666666666666666666666

  • 评论于 2017-09-19 18:51 举报

    很实用

  • 评论于 2018-01-11 08:17 举报

    挺好使的 没毛病

您需要登录后才可以评论。登录 | 立即注册