【发布时间】:2014-11-19 17:58:03
【问题描述】:
我在项目上使用 sequelize 已经有一段时间了。从现在开始,服务器上没有部署任何东西,我认为它只是“npm install”并运行应用程序。但是我在服务器上收到了这个奇怪的错误:
{ [SequelizeDatabaseError: error: syntax error at or near "NOT"]
name: 'SequelizeDatabaseError',
message: 'error: syntax error at or near "NOT"',
parent:
{ [error: syntax error at or near "NOT"]
name: 'error',
length: 81,
severity: 'ERROR',
code: '42601',
detail: undefined,
hint: undefined,
position: '17',
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
file: 'scan.l',
line: '911',
routine: 'base_yyerror',
sql: 'CREATE TABLE IF NOT EXISTS "adapters" ("id" SERIAL , "adapter_number" VARCHAR(255), "password" VARCHAR(255), "last_connect" TIMESTAMP WITH TIME ZONE, "adaman_version" INTEGER, "adaap_version" INTEGER, "created_at" TIMESTAMP WITH TIME ZONE NOT NULL, "updated_at" TIMESTAMP WITH TIME ZONE NOT NULL, PRIMARY KEY ("id"));' }
我在问题中发现了这个错误,那里的人说它只需要将 postgres 升级到 9。不幸的是,部署服务器上的所有系统都使用 postgres 8,并且升级将不会很快可用。
sequelize 中有什么方法可以指定我正在使用的 postgres 版本,或者我应该使用什么 sequelize 版本?
谢谢
【问题讨论】:
-
嗯,不知道 pg8 不支持这个:-/ 我想知道在这种情况下你是否可以进行迁移?
标签: sql node.js postgresql sequelize.js