Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用sequelize postgres时出现语法错误_Node.js_Postgresql_Sequelize.js - Fatal编程技术网

Node.js 使用sequelize postgres时出现语法错误

Node.js 使用sequelize postgres时出现语法错误,node.js,postgresql,sequelize.js,Node.js,Postgresql,Sequelize.js,我有一个应用程序正在使用以下配置: sequelize: 1.7.0 pg: 2.11.1 posgreSql: 9.3 (pg server on my pc) 它与sequelize和mysql方言一起工作。 当我将其更改为: db: 'mysql://user:pass@localhost/dbname' 然后转到postgres并尝试sequelize.sync()我收到以下错误: db: 'postgres://user:pass@localhost/dbname' { “消息”

我有一个应用程序正在使用以下配置:

sequelize: 1.7.0
pg: 2.11.1
posgreSql: 9.3 (pg server on my pc)
它与
sequelize
mysql
方言一起工作。 当我将其更改为:

db: 'mysql://user:pass@localhost/dbname'
然后转到
postgres
并尝试
sequelize.sync()
我收到以下错误:

db: 'postgres://user:pass@localhost/dbname'
{
“消息”:“在\处或附近出现语法错误”(\”,
“名称”:“错误”,
“stack”:“error:syntax error at or near\”(\”\n at Connection.parseE(/Users/me/Desktop/node/modules/pg/lib/Connection.js:561:11)\n at Connection.parseMessage(/Users/me/Desktop/node/node/node/modules/pg/lib/Connection.js:390:17)\n at[object object object object]\n位于EventEmitter.emit(events.js:95:17)\n位于Socket。(\u stream\u readable.js:746:14)\n位于EventEmitter.emit(events.js:92:17)\n位于Emitter readable(\u stream\u readable.js:408:10)\n位于Emitter readable(\u stream\u readable.js:404:5)\n--------------------------------------------\n在module.exports.CustomEventEmitter.failure.CustomEventEmitter.fail.CustomEventEmitter.error(/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom event emitter.js:93:10)\n在exec(/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/query chainer.js:92:14)\n在onError(/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/query chainer.js:72:11)\n在EventEmitter.emit(events.js:95:17)\n在module.exports.CustomEventEmitter.emit(/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom-event-emitter.js:61:33)\n在[对象对象]处。(/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom event emitter.js:131:17)\n--------------------------------------------------------\n在module.exports.CustomEventEmitter.failure.CustomEventEmitter.fail.CustomEventEmitter.error(/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom event emitter/custom\n在exec(/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/query chainer.js:92:14)\n在onError(/Users/me/Desktop/node/node_modules/sequelize/lib/query chainer.js:72:11)\n在EventEmitter.emit(events.js:95:17)\n在module.exports.CustomEventEmitter.emitter.emit(/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom event emitter.js:61:33)\n位于[object object]。(/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom event emitter.js:131:17)”,
“代码”:“42601”
},
“msg”:“未捕获异常”,
“时间”:“2014-03-31T14:17:29.496Z”,
“v”:0
}
我做错了什么

在我在pg中创建
dbname
数据库之前,有一个错误
缺少数据库
,所以我猜sequelize连接到pg,但它在pgsql代码中生成了一些语法错误



问题是,在模型模式中,我有Sequelize.INTEGER(11)-postgres不允许将11作为整数的大小传递-这将在Sequelize的2.x.x版本中解决(您可以在Sequelize github repo上找到与此问题对应的问题).

Sequelize和postgres对我来说很好。您是否在config.js中正确设置了方言、协议和端口

{
   "message":"syntax error at or near \"(\"",
   "name":"error",
   "stack":"error: syntax error at or near \"(\"\n    at Connection.parseE (/Users/me/Desktop/node/myapp/node_modules/pg/lib/connection.js:561:11)\n    at Connection.parseMessage (/Users/me/Desktop/node/myapp/node_modules/pg/lib/connection.js:390:17)\n    at [object Object].<anonymous> (/Users/me/Desktop/node/myapp/node_modules/pg/lib/connection.js:92:20)\n    at EventEmitter.emit (events.js:95:17)\n    at Socket.<anonymous> (_stream_readable.js:746:14)\n    at EventEmitter.emit (events.js:92:17)\n    at emitReadable_ (_stream_readable.js:408:10)\n    at emitReadable (_stream_readable.js:404:5)\n---------------------------------------------\n    at module.exports.CustomEventEmitter.failure.CustomEventEmitter.fail.CustomEventEmitter.error (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom-event-emitter.js:93:10)\n    at exec (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/query-chainer.js:92:14)\n    at onError (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/query-chainer.js:72:11)\n    at EventEmitter.emit (events.js:95:17)\n    at module.exports.CustomEventEmitter.emit (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom-event-emitter.js:61:33)\n    at [object Object].<anonymous> (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom-event-emitter.js:131:17)\n---------------------------------------------\n    at module.exports.CustomEventEmitter.failure.CustomEventEmitter.fail.CustomEventEmitter.error (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom-event-emitter.js:93:10)\n    at exec (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/query-chainer.js:92:14)\n    at onError (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/query-chainer.js:72:11)\n    at EventEmitter.emit (events.js:95:17)\n    at module.exports.CustomEventEmitter.emit (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom-event-emitter.js:61:33)\n    at [object Object].<anonymous> (/Users/me/Desktop/node/myapp/node_modules/sequelize/lib/emitters/custom-event-emitter.js:131:17)",
   "code":"42601"
},
"msg":"uncaughtException",
"time":"2014-03-31T14:17:29.496Z",
"v":0
}

抱歉,我忘了写下这一问题已经解决了-问题是在模型模式中我有
Sequelize.INTEGER(11)
-并且postgres不允许将
11
作为整数大小传递-这将在Sequelize的
2.x.x
版本中解决(您可以在Sequelize github repo上找到与此问题对应的问题)。
{
  "development":{
    "username":"name",
    "password":"pass",
    "database":"db",
    "dialect":"postgres",
    "protocol":"postgres",
    "host":"127.0.0.1",
    "port":"5432"
  },
...