Golang GORM使用

Golang GORM使用

gorm

gorm是go语言中实现数据库访问的ORM(对象关系映射)库。使用这个库,我们可以利用面向对象的方法,更加方便的对数据库中的数据进行CRUD(增删改查)

基本使用

下载依赖

go get github.com/jinzhu/gorm
go get github.com/go-sql-driver/mysql

第一个是核心库。
第二个是mysql驱动包。

连接数据库

packae main
import (
  "github.com/jinzhu/gorm"
 _ "github.com/jinzhu/gorm/dialects/mysql"
  "fmt"
)
func main() {
  db, err := gorm.Open("mysql",
 "root:root@/test?charset=utf8&parseTime=True&loc=Local")

  if err != nil {
      fmt.Println(err)
      return
  }else {
      fmt.Println("connection succedssed")
  }
  defer db.Close()

新增数据

type User struct {
  ID     int            `gorm:"primary_key"`
  Name   string         `gorm:"not_null"`
}

func add() {
  user := &User{Name:"zhangsan"}
  db.Create(user)
}

删除数据

user := &User{ID:1}
db.delete(user)

更新数据

user := &User{ID:1}
db.Model(user).update("Name","lisi")

查询数据

// query all
var users []User
db.Find(&users)
fmt.Println(users)

// query one
user := new (User)
db.First(user,1)
fmt.Println(user)

其它

判断数据库中是否有结构体对应的表:
db.HasTable(User{})
创建表
db.CreateTable(User{})

以上就是gorm基本的用法。

    原文作者:刘昊2018
    原文地址: https://www.jianshu.com/p/9b906b62b2cc
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞