golang通过gorm操作sqlite设置主键自增

在 Golang 中使用 GORM 操作 SQLite 数据库时,可以通过以下步骤设置主键自增:

首先,确保已经安装了 GORM 和 SQLite 的驱动程序。你可以使用以下命令安装它们:

go 复制代码
go get -u gorm.io/gorm  
go get -u gorm.io/driver/sqlite

导入所需的包:

go 复制代码
import (  
    "gorm.io/gorm"  
    "gorm.io/driver/sqlite"  
)

创建数据库连接:

go 复制代码
db, err := gorm.Open(sqlite.Open("mydatabase.db"), &gorm.Config{})  
if err != nil {  
    // 处理错误  
}

创建模型(例如,一个名为 User 的表):

go 复制代码
type User struct {  
    ID   uint   `gorm:"primary_key;auto_increment"`  
    Name string `gorm:"not null"`  
}

在模型中,ID 字段被指定为 primary_key 和 auto_increment,表示该字段是主键并且会自动递增。

执行创建表的操作:

go 复制代码
db.AutoMigrate(&User{})

现在,你可以使用 GORM 插入新记录并自动生成主键值:

go 复制代码
user := User{Name: "John Doe"}  
db.Create(&user)

在插入记录后,user.ID 将包含自动生成的主键值。

这是一个简单的示例,展示了如何在 Golang 中使用 GORM 和 SQLite 设置主键自增。你可以根据自己的需求进行调整和扩展。

相关推荐
繁华落尽,寻一世真情2 小时前
【基于 AI 的智能小说创作助手】MuMuAINovel-sqlite 基于 AI 的智能小说创作助手
数据库·人工智能·sqlite
牛奔5 小时前
Go 如何避免频繁抢占?
开发语言·后端·golang
不老刘9 小时前
LiveKit 本地部署全流程指南(含 HTTPS/WSS)
golang·实时音视频·livekit
Goat恶霸詹姆斯14 小时前
mysql常用语句
数据库·mysql·oracle
xiaowu08015 小时前
C# 拆解 “显式接口实现 + 子类强类型扩展” 的设计思想
数据库·oracle
Tony Bai15 小时前
再见,丑陋的 container/heap!Go 泛型堆 heap/v2 提案解析
开发语言·后端·golang
Apple_羊先森16 小时前
ORACLE数据库巡检SQL脚本--19、磁盘读次数最高的前5条SQL语句
数据库·sql·oracle
念何架构之路18 小时前
Go进阶之panic
开发语言·后端·golang
先跑起来再说18 小时前
Git 入门到实战:一篇搞懂安装、命令、远程仓库与 IDEA 集成
ide·git·后端·elasticsearch·golang·intellij-idea
ggabb19 小时前
中国文化速记清单.地名与母亲河.文化名人与经典
sqlite