栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Go语言

Gorm入门-删除

Go语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Gorm入门-删除

参考 删除 | GORM - The fantastic ORM library for Golang, aims to be developer friendly.

	// 删除数据 https://gorm.io/zh_CN/docs/delete.html
	// 如果模型包含了一个 gorm.deletedat 字段(gorm.Model 已经包含了该字段),它将自动获得软删除的能力!
	// 拥有软删除能力的模型调用 Delete 时,记录不会被数据库。但 GORM 会将 DeletedAt 置为当前时间, 并且不能再通过普通的查询方法找到该记录
	// 软删除 UPDATE `t_test_user` SET `deleted_at`='2022-03-27 14:02:48.259' WHERe id = 10 AND `t_test_user`.`deleted_at` IS NULL
	db.Where("id = ?", 10).Delete(&TestUser{})
	// 物理删除 DELETE FROM `t_test_user` WHERe `t_test_user`.`id` = 11
	db.Unscoped().Delete(&TestUser{ID: 11})
	// UPDATE `t_test_user` SET `deleted_at`='2022-03-27 14:06:03.712' WHERe id = 12 AND `t_test_user`.`deleted_at` IS NULL
	db.Where("id = ?", 12).Delete(&TestUser{})
	// UPDATE `t_test_user` SET `deleted_at`='2022-03-27 14:06:51.373' WHERe `t_test_user`.`id` = 13 AND `t_test_user`.`deleted_at` IS NULL
	db.Delete(&TestUser{}, 13)
	// DELETE FROM `t_test_user` WHERe `t_test_user`.`id` = 14
	db.Unscoped().Delete(&TestUser{}, 14)
	// DELETE FROM `t_test_user` WHERe `t_test_user`.`id` IN (15,16,17)
	db.Unscoped().Delete(&TestUser{}, []int{15, 16, 17})
	db.Unscoped().Delete(&TestUser{}, []int{288})
	// 批量删除
	// UPDATE `t_test_user` SET `deleted_at`='2022-03-27 14:10:44.596' WHERe id in (18,19,20) AND `t_test_user`.`deleted_at` IS NULL
	db.Where("id in ?", []int{18, 19, 20}).Delete(&TestUser{})

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/909653.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号