gpt4 book ai didi

node.js - 在 NodeJs 的 Sequelize 中 autoIncrement 是如何工作的?

转载 作者:IT老高 更新时间:2023-10-28 21:57:38 24 4
gpt4 key购买 nike

Sequelize 的文档没有详细说明 autoIncrement。它仅包括以下示例:

// autoIncrement can be used to create auto_incrementing integer columns
incrementMe: { type: Sequelize.INTEGER, autoIncrement: true }

基于此示例,我有以下代码:

db.define('Entries', {
id: {
type: Seq.INTEGER,
autoIncrement: true,
primaryKey: true
},
title: {
type: Seq.STRING,
allowNull: false
},
entry: {
type: Seq.TEXT,
allowNull: false
}
}

现在,当我想创建一个条目时,我想做这样的事情:

models.Entry.create({title:'first entry', entry:'yada yada yada'})

但是,当我执行该代码时,我得到一个数据库错误:

Null value in column "id" violates not null constraint

我会假设 Sequelize 会为我输入整数或定义数据库表来自行完成。显然不是?我在这里缺少什么来确保 id 自动递增和填充?

非常感谢。

最佳答案

通常 Sequelize.js 会根据数据库自行调整。所以autoincrement属性对应PostgreSQL中的一个serial类型。

我已经使用过 Sequelize,我记得您不需要将 id 指定为主键。 Sequelize 会为您完成。

尝试不添加id属性,看看Sequelize是否不会为你添加。

关于node.js - 在 NodeJs 的 Sequelize 中 autoIncrement 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15737949/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com