首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

gorm框架实现基本的增删改查

连接数据库

package main

import (

"github.com/jinzhu/gorm"

_ "github.com/jinzhu/gorm/dialects/mysql"

)

func main() {

db, err := gorm.Open(

"mysql",

"root:root@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local",

)

if err != nil {

panic(err)

}

defer db.Close()

db.DB().SetMaxIdleConns(10)

db.DB().SetMaxOpenConns(100)

}

创建表

package main

import (

"github.com/jinzhu/gorm"

_ "github.com/jinzhu/gorm/dialects/mysql"

)

type User struct {

Id   int    `json:"id"`

Name string `json:"name"`

Age  int    `json:"age"`

}

func main() {

db, err := gorm.Open(

"mysql",

"root:root@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local",

)

if err != nil {

panic(err)

}

defer db.Close()

db.DB().SetMaxIdleConns(10)

db.DB().SetMaxOpenConns(100)

db.AutoMigrate(&User{})

}

新增数据

package main

import (

"github.com/jinzhu/gorm"

_ "github.com/jinzhu/gorm/dialects/mysql"

)

type User struct {

Id   int    `json:"id"`

Name string `json:"name"`

Age  int    `json:"age"`

}

func main() {

db, err := gorm.Open(

"mysql",

"root:root@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local",

)

if err != nil {

panic(err)

}

defer db.Close()

db.DB().SetMaxIdleConns(10)

db.DB().SetMaxOpenConns(100)

u1 := &User{1, "张三", 23}

db.Create(u1)

}

查找数据

package main

import (

"fmt"

"github.com/jinzhu/gorm"

_ "github.com/jinzhu/gorm/dialects/mysql"

)

type User struct {

Id   int    `json:"id"`

Name string `json:"name"`

Age  int    `json:"age"`

}

func main() {

db, err := gorm.Open(

"mysql",

"root:root@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local",

)

if err != nil {

panic(err)

}

defer db.Close()

db.DB().SetMaxIdleConns(10)

db.DB().SetMaxOpenConns(100)

var uu User

db.Find(&uu, "name=?", "张三")

fmt.Printf("%#v\n", uu)

}

修改数据

package main

import (

"fmt"

"github.com/jinzhu/gorm"

_ "github.com/jinzhu/gorm/dialects/mysql"

)

type User struct {

Id   int    `json:"id"`

Name string `json:"name"`

Age  int    `json:"age"`

}

func main() {

db, err := gorm.Open(

"mysql",

"root:root@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local",

)

if err != nil {

panic(err)

}

defer db.Close()

db.DB().SetMaxIdleConns(10)

db.DB().SetMaxOpenConns(100)

var user = User{Id: 1}

db.Model(&user).Update("name", "李四")

fmt.Printf("%#v\n", user)

var uu User

db.Find(&uu, "id=?", 1)

fmt.Printf("%#v\n", uu)

}

删除数据

package main

import (

"fmt"

"github.com/jinzhu/gorm"

_ "github.com/jinzhu/gorm/dialects/mysql"

)

type User struct {

Id   int    `json:"id"`

Name string `json:"name"`

Age  int    `json:"age"`

}

func main() {

db, err := gorm.Open(

"mysql",

"root:root@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local",

)

if err != nil {

panic(err)

}

defer db.Close()

db.DB().SetMaxIdleConns(10)

db.DB().SetMaxOpenConns(100)

var user = User{Id: 1}

db.Delete(&user)

fmt.Printf("%#v\n", user)

var uu User

db.Find(&uu, "id=?", 1)

fmt.Printf("%#v\n", uu)

}

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OxtjwyFvzPEOaK_fhqvCDz0A0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券