node.js + postgres:“ $ 1”或附近的语法错误

ra

我在理解npm软件包pg及其“动态语句”时遇到麻烦。

我希望能够生成INSERT INTO语句,但我只会得到语法错误

var pg = require('pg');
var connectionString = 'postgres://postgres@localhost/db';

pg.connect(connectionString, function(err, client, done) {
  if (err) { return console.error(err); }

  var queryConfig = {
    text: 'INSERT INTO users($1, $2, $3) VALUES($4, $5, $6);',
    values: ['username', 'firstname', 'lastname', 'ab', 'A', 'B']
  };

  client.query(queryConfig, function (err, result) {
    if (err) { return console.error(err); }
    done();
  });
});

我得到的错误是:

{ [error: syntax error at or near "$1"]
  name: 'error',
  length: 84,
  severity: 'ERROR',
  code: '42601',
  detail: undefined,
  hint: undefined,
  position: '19',
  internalPosition: undefined,
  internalQuery: undefined,
  where: undefined,
  file: 'scan.l',
  line: '1053',
  routine: 'scanner_yyerror' }

有人可以帮助我了解我在做什么错吗?

亩太短

数据库通常不允许您使用占位符作为标识符(表名,列名等)。PostgreSQL抱怨,因为您试图使用前三个占位符作为列名:

INSERT INTO users($1, $2, $3) ...

您可以想到标识符,例如JavaScript中的变量名:如果没有某种形式的eval修饰,就不能将变量名放入另一个变量中同样,您不能将列名放在占位符中。

您应指定不带占位符的列名:

var queryConfig = {
  text: 'INSERT INTO users(username, firstname, lastname) VALUES($1, $2, $3);',
  values: ['ab', 'A', 'B']
};

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

node.js + postgres:“ $ 1”或附近的语法错误

来自分类Dev

在“ IF”或附近的Postgres语法错误

来自分类Dev

postgres中“ $ 1”或附近的golang语法错误

来自分类Dev

Node js mysql 语法错误

来自分类Dev

postgres sql:错误:“偏移”处或附近的语法错误

来自分类Dev

存储过程Postgres中FOR LOOP附近的语法错误

来自分类Dev

Postgres异常处理-“ EXCEPTION”或附近的语法错误

来自分类Dev

Windows - Postgres:“;”处或附近的语法错误 结尾;

来自分类Dev

Node.js导入失败,出现语法错误

来自分类Dev

地址信息语法错误Node.js(快速)

来自分类Dev

Node.js / Jade语法错误:意外令牌;

来自分类Dev

Postgres JDBC驱动程序:PSQLException:RETURNING或附近的语法错误

来自分类Dev

从MySQL迁移到Postgres后,了解“ SEPARATOR”处或附近的语法错误

来自分类Dev

Express.js node.js 语法错误尝试 .update() mongoDB

来自分类Dev

在Kubernetes下运行时busybox / node.js给出ELF语法错误

来自分类Dev

尝试使用json在Node.js中解析以获取语法错误

来自分类Dev

Node.js-未定义:0语法错误:输入意外结束

来自分类Dev

MYSQL查询在Node.JS中正确时给我语法错误?

来自分类Dev

语法错误:node.js中出现意外的令牌非法

来自分类Dev

有没有办法让Postgres告诉您除了/附近还有什么语法错误?

来自分类Dev

Postgres删除表语法错误

来自分类Dev

声明postgres变量时的语法错误

来自分类Dev

postgres抛出COPY FROM的语法错误

来自分类Dev

Postgres删除表语法错误

来自分类Dev

函数中的Postgres语法错误

来自分类Dev

if条件中的Postgres语法错误

来自分类Dev

创建Postgres函数时的语法错误

来自分类Dev

Postgres查询中的语法错误

来自分类Dev

Postgres Case更新语法错误

Related 相关文章

  1. 1

    node.js + postgres:“ $ 1”或附近的语法错误

  2. 2

    在“ IF”或附近的Postgres语法错误

  3. 3

    postgres中“ $ 1”或附近的golang语法错误

  4. 4

    Node js mysql 语法错误

  5. 5

    postgres sql:错误:“偏移”处或附近的语法错误

  6. 6

    存储过程Postgres中FOR LOOP附近的语法错误

  7. 7

    Postgres异常处理-“ EXCEPTION”或附近的语法错误

  8. 8

    Windows - Postgres:“;”处或附近的语法错误 结尾;

  9. 9

    Node.js导入失败,出现语法错误

  10. 10

    地址信息语法错误Node.js(快速)

  11. 11

    Node.js / Jade语法错误:意外令牌;

  12. 12

    Postgres JDBC驱动程序:PSQLException:RETURNING或附近的语法错误

  13. 13

    从MySQL迁移到Postgres后,了解“ SEPARATOR”处或附近的语法错误

  14. 14

    Express.js node.js 语法错误尝试 .update() mongoDB

  15. 15

    在Kubernetes下运行时busybox / node.js给出ELF语法错误

  16. 16

    尝试使用json在Node.js中解析以获取语法错误

  17. 17

    Node.js-未定义:0语法错误:输入意外结束

  18. 18

    MYSQL查询在Node.JS中正确时给我语法错误?

  19. 19

    语法错误:node.js中出现意外的令牌非法

  20. 20

    有没有办法让Postgres告诉您除了/附近还有什么语法错误?

  21. 21

    Postgres删除表语法错误

  22. 22

    声明postgres变量时的语法错误

  23. 23

    postgres抛出COPY FROM的语法错误

  24. 24

    Postgres删除表语法错误

  25. 25

    函数中的Postgres语法错误

  26. 26

    if条件中的Postgres语法错误

  27. 27

    创建Postgres函数时的语法错误

  28. 28

    Postgres查询中的语法错误

  29. 29

    Postgres Case更新语法错误

热门标签

归档