当前位置:   article > 正文

gorm 操作MYSQL数据库_gorm创建mysql数据库

gorm创建mysql数据库

1.创建数据库

create database test character set utf8mb4;

2.代码

  1. package main
  2. import (
  3. "fmt"
  4. "log"
  5. "gorm.io/driver/mysql"
  6. "gorm.io/gorm"
  7. "gorm.io/gorm/schema"
  8. )
  9. type Person struct {
  10. ID int `gorm:"primaryKey;AUTO_INCREMENT"`
  11. Name string
  12. Age int
  13. }
  14. var DSN = "root:123@tcp(192.168.4.41:3306)/test?charset=utf8mb4"
  15. var DB *gorm.DB
  16. func init() {
  17. var err error
  18. DB, err = gorm.Open(mysql.Open(DSN), &gorm.Config{
  19. SkipDefaultTransaction: true,
  20. AllowGlobalUpdate: true,
  21. PrepareStmt: true,
  22. NamingStrategy: schema.NamingStrategy{
  23. SingularTable: true,
  24. },
  25. })
  26. if err != nil {
  27. log.Fatalln(err)
  28. }
  29. DB.AutoMigrate(Person{})
  30. }
  31. func Insert() {
  32. DB.Debug().Create(&Person{Name: "zhang3", Age: 10})
  33. DB.Debug().Create(&Person{Name: "li4", Age: 11})
  34. DB.Debug().Create(&Person{Name: "wang5", Age: 12})
  35. }
  36. func Select() {
  37. var ps []Person
  38. DB.Debug().Find(&ps, "age >?", 10)
  39. fmt.Println("查询结果:", ps)
  40. }
  41. func Update() {
  42. rf := DB.Debug().Model(Person{}).Where("name = ?", "zhang3").Update("name", "zhangsan").RowsAffected
  43. fmt.Println("更新记录条数:", rf)
  44. }
  45. func Delete() {
  46. rf := DB.Debug().Delete(Person{}).RowsAffected
  47. fmt.Println("删除记录条数:", rf)
  48. }
  49. func main() {
  50. Insert()
  51. Select()
  52. Update()
  53. Delete()
  54. }

3.运行结果:

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号