nodejs和pg模块 - 查询语法

时间:2013-07-17 23:57:34

标签: node.js

我正在使用nodejs 0.10.12和pg模块2.2.0版。

现在,在服务器端,我有一个像

这样的代码
var ja=message.utf8Data;
var query = client.query("SELECT pins.p_name FROM pins WHERE  p_id = ja");

ja是一个var,代表一个int,来自客户端,通过websockets。我正在尝试将它用于查询,但我不能。我找不到合适的语法来使它工作。如果我用例如64替换查询中的ja,那么查询和代码一般都可以正常工作。 我尝试了类似p_id=(ja)的语法,但我一直收到undefiendja is not a column in a table等错误。

什么是rigth语法?

由于

1 个答案:

答案 0 :(得分:1)

client.query("SELECT pins.p_name FROM pins WHERE p_id ="+ja);

应该做的伎俩。由于它是通过套接字进入的,因此您可能需要对输入进行一些清理以防止注入攻击。 mysql-node模块具有良好的功能

  connection.escape()

或者,

connection.query('SELECT ? FROM myTable',[ja],function(err,rows) {});