如何为 mariadb、node.js 和 websockets 创建准备好的语句

How to create prepared statements for mariadb, node.js and websockets

我正在尝试使用准备好的语句创建数据库查询。

我有:

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/