我有一个简单的Sequelize设置。
var config = require('../config'),
Sequelize = require('sequelize'),
sequelize = new Sequelize(
config.get('database'),
config.get('username'),
config.get('password'), {
host: config.get('host'),
port: config.get('dbport'),
dialect: config.get('dialect'),
pool: {
max: 5,
min: 0,
idle: 10000
}
})
如果我运行普通支票sequelize.authenticate()
,它可以正常工作并显示连接没有问题。但是,如果我尝试定义一个简单模型,sequelize.sync();
会抛出错误:Unhandled rejection SequelizeDatabaseError: syntax error at or near "NOT"
。
在我看来,在sequelize或驱动程序中存在问题。
顺便说一句,我使用PostgreSQL 9.0.13
答案 0 :(得分:2)
对于那些会遇到同样问题的人。
正如Alex创建的Syntax error on sequelize.define()
问题中所述,这与PostgreSQL版本sequelize
连接到的内容有关:
Postgres 9.0(当然,更旧)不支持CREATE TABLE IF NOT NOT EXISTS
问题的两种不同解决方案:
sequelize
升级到最新版本(the fix已应用于sequelize
3.15)