一、使用gorm删除数据
package main
import (
"fmt"
"github.com/jinzhu/gorm"
_ "github.com/jinzhu/gorm/dialects/mysql"
)
//创建映射结构体
type User struct {
//gorm.Model框架自带的结构体
gorm.Model
Name string
Age int64
}
func main() {
//连接数据库
db, err := gorm.Open("mysql", "root:123456@(localhost:3306)/db01?charset=utf8mb4&parseTime=True&loc=Local")
if err != nil {
fmt.Println("open err:", err)
return
}
//关闭连接
defer db.Close()
//与数据表进行关联
//db.AutoMigrate(&User{})
//创建数据
user := User{Name: "小明", Age: 15}
db.Create(&user)
user1 := User{Name: "小红", Age: 16}
db.Create(&user1)
var u []User
//删除所有数据
//db.Delete(&User{})
//db.Find(&u)
//fmt.Println("删除后的记录:",u)
//删除指定数据批量
//db.Where("id in (?)",[]int64{1,2}).Delete(&User{})
//db.Find(&u)
//fmt.Println("删除后的记录:",u)
//物理删除数据
db.Unscoped().Find(&u)
fmt.Println("软删除的数据为:",u)
db.Unscoped().Delete(&User{})
db.Unscoped().Find(&u)
fmt.Println("物理删除的数据为:",u)
}