如何为mariadb, node.js和websockets创建预处理语句



我正在尝试使用准备好的语句创建一个db查询。

我:

connection.query('
INSERT INTO myTable (column_1, column_2, column_3) 
VALUES (?`, [col_1_val]`, ?`, [col_2_val]`, ?`, [col_3_val]`)`)

显然这是非常错误的。在上面的例子中,所有的变量都是数字。但在实际生产中,有些将是字符串。

我也尝试了很多其他的东西,比如:

connection.query('
INSERT INTO myTable (column_1, column_2, column_3) 
VALUES (?, ?, ?`, [col_1_val, col_2_val, col_3_val])

node.js中的预处理语句可以写成:

connection.query("
INSERT INTO myTable (column_1, column_2, column_3) 
VALUES (?, ?, ?)", [col_1_val, col_2_val, col_3_val])

对于您希望转换为字符串的变量:

connection.query("
INSERT INTO myTable (column_1, column_2, column_3) 
VALUES (?, ?, ?)", [col_1_val.toString(), col_2_val.toString(), 
col_3_val.toString()])

MariaDB入门页提供了一个准备好的语句示例:https://mariadb.com/kb/en/getting-started-with-the-nodejs-connector/

最新更新