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 设置主键自增。你可以根据自己的需求进行调整和扩展。

相关推荐
lambo mercy12 小时前
Day3:结构化输出
java·数据库·oracle
倔强的小石头_17 小时前
从Go+SQLite编译到浏览器开局:landlord部署、AI对局与固定地址实战
人工智能·golang·sqlite
NineData17 小时前
Oracle 实时同步到 Doris 怎么做?全量迁移、CDC 增量复制与数据校验指南
数据库·oracle
oradh18 小时前
Oracle SQL性能优化案例----数据入库和更新任务
sql·oracle·性能优化
tachibana218 小时前
Go 语言的 Map 是否是并发安全的?
开发语言·数据结构·后端·golang·go·语言
后除18 小时前
Go 实战: 使用 Wails v2.15 构建轻量级的桌面应用 - 仿微信登录界面
开发语言·微信·golang
看浪的路人18 小时前
第8讲:RAG 生产化——Go 实现亿级向量召回 + 混合检索 + 重排序 Pipeline
开发语言·后端·golang
tachibana218 小时前
Go 语言 Map 的扩容过程是怎样的?
开发语言·后端·golang·go·语言
念何架构之路19 小时前
go-grpc服务端调用链
开发语言·后端·golang
泡海椒19 小时前
JQuickExcel 大文件排障与调优:从实际路径定位 OOM、临时盘和慢任务
开发语言·数据库·缓存·oracle·excel