如何使用go中的auto_increment键将数据插入数据库

我有一个带有名为 blogpost 的表的 SQL 数据库,它的列 ID 设置为 auto_increment 现在我必须向数据库中插入一个值,我使用了以下代码:

 _, err := db.Exec("Insert  into blogpost (id, title, description, author) values(?,?,?)", newBlog.Title, newBlog.Description, newBlog.Author)

但我收到以下错误:

Column count doesn't match value count at row 1


ABOUTYOU
浏览 103回答 2
2回答

青春有我

Column count doesn't match value count at row 1显示是因为您定义了 3 个参数而不是 4 个。您定义id, title, description and author的是总共 4 列。而在您提供价值观的地方,您总共只有 3 个values(?,?,?)。如果您id已经设置为auto_icnrement,则无需在插入方法中执行任何操作,只需像这样将其取出即可: _, err := db.Exec("Insert  into blogpost (title, description, author) values(?,?,?)", newBlog.Title, newBlog.Description, newBlog.Author)

www说

尝试从字段列表中删除id
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go