Go Gorm 硬删除

8 min read

Go Gorm中的硬删除涉及直接从数据库中删除记录,而不将其标记为已删除状态。 以下是一些示例代码来进行硬删除:

假设我们有一个名为User的模型:

type User struct {
    ID        uint64 `gorm:"primary_key"`
    Name      string
    DeletedAt *time.Time `sql:"index"`
}

要进行硬删除,我们可以使用以下代码:

db.Where("id = ?", userID).Delete(&User{})

这将直接从数据库中删除ID为userID的记录。

请注意,这种方法通常不建议使用,因为它可能导致数据丢失。建议使用Gorm提供的软删除功能,将记录标记为已删除状态,以便稍后可以恢复。