go orm GORM

官网:https://gorm.io/

docs:https://gorm.io/docs/

博客:https://www.tizi365.com/archives/6.html

Go 复制代码
import (
    "fmt"

    "gorm.io/driver/mysql"
    "gorm.io/gorm"
)

type Product struct {
    gorm.Model
    Code  string
    Price uint
}

func main() {
    fmt.Println("main ...")

    dsn := "act:Q***wsx@tcp(127.0.0.1:3306)/tbname1?charset=utf8mb4&parseTime=True&loc=Local"
    var db, err = gorm.Open(mysql.Open(dsn), &gorm.Config{})
    if err != nil {
       panic("failed to connect database")
    }

    // Migrate the schema
    db.AutoMigrate(&Product{})

    // Create
    db.Create(&Product{Code: "D4211", Price: 100})

    // Read
    var product Product
    db.First(&product, 1)                 // find product with integer primary key
    db.First(&product, "code = ?", "D42") // find product with code D42
    fmt.Println(product)

    // Update - update product's price to 200
    db.Model(&product).Update("Price", 200)
    // Update - update multiple fields
    db.Model(&product).Updates(Product{Price: 200, Code: "F42"}) // non-zero fields
    db.Model(&product).Updates(map[string]interface{}{"Price": 200, "Code": "F42"})

    // Delete - delete product
    db.Delete(&product, 1)

    fmt.Println("success ...")
}
相关推荐
橙序员小站6 分钟前
JDK17 前后写法对比:差点没认出是 Java
java·后端
肖哥弹架构8 分钟前
Spring JDBCTemplate 十大性能优化秘籍:从慢如蜗牛到快如闪电!
java·后端·程序员
wenb1n10 分钟前
【Oracle】套接字异常(SocketException)背后隐藏的Oracle问题:ORA-03137深度排查与解决之道
后端
苦学编程的谢11 分钟前
MyBatis_3
java·开发语言·后端·mybatis
是2的10次方啊12 分钟前
🦆 小黄鸭调试法:程序员必备的5种神奇调试技巧,让Bug无处遁形!
后端
wenb1n14 分钟前
【Oracle】Oracle分区表“排雷“指南:当ORA-14400错误找上门时如何优雅应对
后端
guojl25 分钟前
MyBatis最佳实践
后端·微服务·mybatis
go54631584651 小时前
Python点阵字生成与优化:从基础实现到高级渲染技术
开发语言·人工智能·python·深度学习·分类·数据挖掘
猫头虎1 小时前
2025年02月11日 Go生态洞察:Go 1.24 发布亮点全面剖析
开发语言·后端·python·golang·go·beego·go1.19