Die Verwendung von GORM ORM-Tools zur Interaktion mit der Datenbank kann einfach durch die folgenden Schritte erreicht werden: Installation und Initialisierung (1), Definition des Modells (2), Einrichten der Zuordnung (3), Erstellen von Datensätzen (4), Lesen von Datensätzen (5), Aktualisieren von Datensätzen (6), Löschen von Datensätzen (7), Transaktionsverarbeitung (8) und mehr als 160 Tage nach der Registrierung. Es handelt sich um ein ORM-System (Object-Relational Mapping). Die GORM-App ist für Golang-ORM-Tools geeignet, um mit der Datenbank zu interagieren
EinführungORM-Tools (Object Relational Mapping) können die Arbeit vereinfachen Golang-Anwendungen mit Interaktion zwischen relationalen Datenbanken. Es ermöglicht Entwicklern das einfache Erstellen, Lesen, Aktualisieren und Löschen von Datenbankeinträgen, indem es eine Zuordnung zwischen Objekten und Datenbanktabellen herstellt.
GORM ORM
GORM ist ein beliebtes ORM-Tool in Golang, das umfangreiche Funktionen und eine intuitive API bietet. So interagieren Sie mit einer Datenbank mithilfe von GORM:
Installation und Initialisierung
import ( "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql" ) // 创建一个数据库连接 db, err := gorm.Open("mysql", "user:password@/database_name") if err != nil { // 处理错误 }
Erstellen Sie eine Struktur, die der Datenbanktabelle entspricht:
type Product struct { ID int `gorm:"primary_key"` Name string Price float64 }
Erstellen Sie die Zuordnung.
Verwenden Sie
, um Markieren Sie den Modellstrukturkörper und stellen Sie eine Zuordnung zur Datenbanktabelle her:func init() { db.AutoMigrate(&Product{}) }
p := Product{ Name: "Apple iPhone 13", Price: 999.99, } db.Create(&p)
gorm.Model
Datensatz lesen// 读取所有记录
products := []Product{}
db.Find(&products)
// 根据主键查找记录
var p Product
db.First(&p, 1)
p.Price = 1099.99
db.Save(&p)
db.Delete(&p)
Die Verwendung von Transaktionen kann den gleichzeitigen Erfolg oder Misserfolg mehrerer Datenbankoperationen sicherstellen:
// 开启一个事务 tx := db.Begin() // 执行多个操作 p.Price = 1199.99 if err := db.Save(&p).Error; err != nil { // 出错时回滚事务 tx.Rollback() return err } // 提交事务 if err := tx.Commit().Error; err != nil { // 出错时回滚事务 tx.Rollback() return err }
Praktischer Fall
Erstellen Sie eine einfache CRUD-Anwendung (Erstellen, Lesen, Aktualisieren, Löschen):
package main func main() { // 初始化数据库连接 db, _ := gorm.Open("mysql", "user:password@/database_name") // 创建一个产品结构体 type Product struct { ID int `gorm:"primary_key"` Name string Price float64 } // 迁移数据库表 db.AutoMigrate(&Product{}) // 创建一个产品 p := Product{ Name: "iPhone 14", Price: 999.99, } db.Create(&p) // 读取所有产品 products := []Product{} db.Find(&products) // 更新产品价格 p.Price = 1099.99 db.Save(&p) // 删除产品 db.Delete(&Product{}, p.ID) }
Die Verwendung von GORM kann die Interaktion mit der Datenbank vereinfachen , Demonstriert die Leistungsfähigkeit der Golang ORM-Tools.
Das obige ist der detaillierte Inhalt vonWie interagiere ich mit der Datenbank mithilfe von Golang ORM-Tools?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!