首頁 >資料庫 >mysql教程 >如何在單節點-MySQL查詢中執行多條SQL語句?

如何在單節點-MySQL查詢中執行多條SQL語句?

Susan Sarandon
Susan Sarandon原創
2024-12-20 09:32:11696瀏覽

How Can I Execute Multiple SQL Statements in a Single Node-MySQL Query?

使用node-mysql在單一查詢中執行多個SQL語句

您提到使用在單一查詢中執行多個DELETE語句時遇到錯誤節點-mysql。若要解決此問題,您應該在連線配置中啟用對多語句的支援。

啟用多語句查詢

node-mysql 文件解釋了對多語句的支援最初出於安全原因停用,以防止 SQL 注入攻擊。若要啟用它,請將以下行新增至您的連線設定:

var connection = mysql.createConnection({multipleStatements: true});

執行多個語句

啟用多個語句後,您可以使用多個語句執行查詢語句,用分號(;) 分隔每個語句。結果將是一個數組,其中包含每個語句的數組。

範例

考慮以下程式碼:

connection.query('DELETE FROM user_tables WHERE name = 'Testbase';DELETE FROM user_tables_structure WHERE parent_table_name = 'Testbase';DELETE FROM user_tables_rules WHERE parent_table_name = 'Testbase';DELETE FROM user_tables_columns WHERE parent_table_name = 'Testbase';', [1, 2], function(err, results) {
  if (err) throw err;

  // `results` is an array with one element for every statement in the query:
  console.log(results[0]); // [{1: 1}]
  console.log(results[1]); // [{2: 2}]
});

透過啟用多個語句並用分號正確分隔語句,您應該能夠在單一查詢中執行所有DELETE 操作。

以上是如何在單節點-MySQL查詢中執行多條SQL語句?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn