【发布时间】:2020-07-06 17:09:05
【问题描述】:
我正在为我的数据库使用 Sequelize (6.3.0) 和 sqlite3 (4.2.0),我正在尝试定义以下模型:
this.define("giveaways", {
channel: {
type: Sq.STRING,
allowNull: false
},
message: {
type: Sq.STRING,
allowNull: false
},
name: {
type: Sq.STRING,
allowNull: false
},
end: {
type: Sq.DATE,
allowNull: false
},
participating: {
type: Sq.ARRAY(Sq.STRING),
allowNull: false,
defaultValue: []
},
winnersCount: {
type: Sq.NUMBER,
allowNull: false
},
winners: {
type: Sq.ARRAY(Sq.STRING),
allowNull: false,
defaultValue: []
},
finished: {
type: Sq.BOOLEAN,
allowNull: false,
defaultValue: false
},
host: {
type: Sq.STRING,
allowNull: false
}
});
它应该在进程启动时定义,但我收到以下错误:
(node:22440) UnhandledPromiseRejectionWarning: SequelizeDatabaseError: SQLITE_ERROR: near "[]": syntax error
当然,每当我尝试对此表执行任何操作时,都会出现以下错误:
(node:22440) UnhandledPromiseRejectionWarning: SequelizeDatabaseError: SQLITE_ERROR: no such table: giveaways
我猜问题来自使用 ARRAY 数据类型的“参与”和“获胜者”行。
感谢您的帮助
【问题讨论】:
标签: javascript node.js sqlite sequelize.js