yii2 增删改查 [ 2.0 版本 ]

2021-07-20 14:37:52 浏览数 (2)

一、新增

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

代码语言:txt复制
$user= new User;         
$user->username =$username;  
$user->password =$password;  
$user->save()

使用createCommand()进行新增数据

代码语言:txt复制
Yii::$app->db->createCommand()->insert('user', [  
    'name' => 'test',  
    'age' => 30,  
])->execute();

批量插入数据

代码语言:txt复制
Yii::$app->db->createCommand()->batchInsert('user', ['name', 'age'], [  
    ['test01', 30],  
    ['test02', 20],  
    ['test03', 25],  
])->execute();

二、修改

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

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

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

代码语言:txt复制
$result = User::model()->updateAll(['age'=>40],['name'=>'test']);

使用createCommand()修改

代码语言:txt复制
Yii::$app->db->createCommand()->update('user', ['age' => 40], 'name = test')->execute();

三、删除

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

代码语言:txt复制
$user = User::find()->where(['name'=>'test'])->one();

$user->delete();

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

代码语言:txt复制
$result = User::deleteAll(['age'=>'30']);

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

代码语言:txt复制
$result = User::deleteByPk(1);

使用createCommand()删除

代码语言:txt复制
Yii::$app->db->createCommand()->delete('user', 'age = 30')->execute();

四、查找

查找一个

代码语言:txt复制
$data = User::find()->where(['age'=> 23])->asArray()->one();

查找全部

代码语言:txt复制
$data = User::find()->where(['age'=> 23])->asArray()->all();

求和

代码语言:txt复制
$data = User::find()->where(['age'=> 23])->sum('age');

0 人点赞