Implement Gorm และ MySQL ใน Go
ในส่วนของ Gorm นั้นคือ Library ORM ของ Go ที่ช่วยเราเก็บข้อมูลลง server หรือ get ข้อมูลมาใช้ ได้คล้ายกับ Prisma หรือ SQL โดยที่ gorm รองรับทั้ง supports the databases MySQL, PostgreSQL, SQLite, SQL Server
เราสามารถใช้ gorm ได้ ผ่านการ import
|
package main
import (// การ import gorm เข้ามาใช้
"gorm.io/gorm"
"gorm.io/driver/sqlite"
)
type Product struct {// สร้าง model schema
gorm.Model
Code string
Price uint
}
func main() {// func gorm
db, err := gorm.Open(sqlite.Open("test.db"), &gorm.Config{})
if err != nil {
panic("failed to connect database")
}
// Migrate the schema
db.AutoMigrate(&Product{})
// Create
db.Create(&Product{Code: "D42", 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
// 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)
}