gorm 表操作

  • 下载 gorm

    go get  github.com/jinzhu/gorm
    
  • 导包 ,包前面的 _ 代表不需要校验的意思

    import (
    	"github.com/jinzhu/gorm"
        _ "github.com/jinzhu/gorm/dialects/mysql"
    )
    
  • 连接数据库

    user:password@tcp(host:port)/database?charset=utf8&parseTime=true&loc=Local
    
    • user : 用户名
    • password: 密码
    • host : 主机
    • port : 端口
    • database : 数据库
    • charset : 数据库编码集
    • parseTime: 解析时间要针对的是time.Now()
    • loc : 针对的是时区 Local 代表本地时区
  • 代码示例

    • 数据结构体

      type User struct {
      	Id int
      	Name string
      	Age int
      	Addr string
      }
      
    • 后端代码

      func ConnectMysql(ctx *gin.Context){
      	// 链接数据库
      	db,err := gorm.Open("mysql","root:root@tcp(127.0.0.1:3306)/gorm_project?charset=utf8&parseTime=true&loc=Local")
      
      	if err != nil{
      		panic(err)
      	}
      	// 关闭数据库连接
      	defer db.Close()
      }
      
  • 创建数据表

    var user User
    db.CreateTable(&user)
    
  • 指定表名创建数据表

    db.Table("表名").CreateTable(&user)
    
  • 删除表 DropTable

    // 两种方式可以删除表
    
    // 第一种直接删除表名
    db.DropTable("users")
    
    // 第二种直接删除user结构体
    db.DropTable(&user)
    
  • 迁移表

    var user User
    db.AutoMigrate(&user)
    
posted @   巫小诗  阅读(582)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示