(七)GORM删除数据
一、删除模型数据
删除模型数据一般用于删除之前查询出来的模型变量绑定的记录。
用法:db.Delete(模型变量)
//例子:
food := Food{}
//先查询一条记录, 保存在模型变量food
//等价于: SELECT * FROM `foods` WHERE (id = '2') LIMIT 1
db.Where("id = ?", 2).Take(&food)
//删除food对应的记录,通过主键Id标识记录
//等价于: DELETE from `foods` where id=2;
db.Delete(&food)
二、根据Where条件删除数据
用法:db.Where(条件表达式).Delete(空模型变量指针)
//等价于:DELETE from `foods` where (`type` = 5);
db.Where("type = ?", 5).Delete(&Food{})
提示:这里Delete函数需要传递一个空的模型变量指针,主要用于获取模型变量绑定的表名。 不能传递一个非空的模型变量,否则就变成删除指定的模型数据,自动在where语句加上类似id = 2这样的主键约束条件。