前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Gorm-定义模型字段和标签(二)

Gorm-定义模型字段和标签(二)

原创
作者头像
堕落飞鸟
发布2023-04-24 00:09:22
4920
发布2023-04-24 00:09:22
举报
文章被收录于专栏:飞鸟的专栏

示例代码

以下是使用Gorm定义模型字段和标签的示例代码:

代码语言:javascript
复制
package main

import (
    "fmt"
    "gorm.io/driver/mysql"
    "gorm.io/gorm"
    "time"
)

type User struct {
    ID        uint   `gorm:"primaryKey"`
    Name      string `gorm:"column:username;size:100;not null"`
    Age       int    `gorm:"not null"`
    Email     string `gorm:"unique;not null"`
    Avatar    []byte
    CreatedAt time.Time `gorm:"autoCreateTime"`
    UpdatedAt time.Time `gorm:"autoUpdateTime"`
}

func main() {
    // 连接MySQL数据库
    dsn := "root:123456@tcp(127.0.0.1:3306)/test_db?charset=utf8mb4&parseTime=True&loc=Local"
    db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
    if err != nil {
        panic("Failed to connect to database!")
    }

    // 自动迁移模型
    err = db.AutoMigrate(&User{})
    if err != nil {
        panic("Failed to migrate model!")
    }

    // 插入数据
    user := User{
        Name:      "John",
        Age:       30,
        Email:     "john@example.com",
        Avatar:    []byte("avatar"),
        CreatedAt: time.Now(),
        UpdatedAt: time.Now(),
    }
    result := db.Create(&user)
    if result.Error != nil {
        panic("Failed to create user!")
    }
    fmt.Println("User created successfully!")
}

在上述示例代码中,我们首先定义了一个名为User的结构体,并为每个字段设置了不同的标签。接着,我们通过调用AutoMigrate方法,自动将User模型迁移到MySQL数据库中。最后,我们插入了一条用户记录,并通过Create方法将其保存到数据库中。Gorm-定义模型字段和标签(一)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 示例代码
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档