如何为 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/
我正在尝试使用准备好的语句创建数据库查询。
我有:
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/