Berbilang Pertanyaan Pernyataan dalam Node-MySQL
Dalam node-mysql, berbilang pernyataan SQL boleh dilaksanakan dalam satu pertanyaan dengan menyambungkannya dengan koma bertitik (;). Walau bagaimanapun, ciri ini dilumpuhkan secara lalai atas sebab keselamatan. Untuk mendayakannya, tetapkan berbilangPenyata: benar dalam pilihan sambungan.
Untuk menggunakan berbilang pertanyaan pernyataan, bina rentetan SQL dengan penyataan dipisahkan dengan koma bertitik. Contohnya:
var sql_string = "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';";
Kemudian, laksanakan pertanyaan menggunakan connection.query(sql_string, callback). Fungsi panggil balik akan menerima objek ralat (jika ada) dan tatasusunan set hasil untuk setiap pernyataan.
Contoh:
var connection = mysql.createConnection({multipleStatements: true}); connection.query(sql_string, function(err, results) { if (err) throw err; // results is an array containing the results of each statement res.send('true'); });
Perhatikan bahawa anda mungkin menghadapi ralat jika versi pelayan SQL terlalu lama atau pemacu pangkalan data tidak dikonfigurasikan dengan betul. Dalam kes sedemikian, adalah disyorkan untuk melaksanakan pernyataan secara individu.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Berbilang Pernyataan SQL dalam Satu Pertanyaan dengan Node-MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!