2017-09-25 12 views
0

將產品添加到mysql數據庫後,我想將所有產品轉儲到最新產品。該產品正在向數據庫添加一種算法,我想在之後立即列出所有產品。已經嘗試過「異步」,「承諾」等Node.js,插入後未在列表查詢中顯示

- 當表是空 -

connection.query("INSERT INTO `products` (id, name, price)", function (error, results, fields) {}); //inserted one row 

connection.query("SELECT * FROM `products`", function (error, results, fields) {}); // show only [] 

後第二插入列表查詢只顯示第一行而不是第二。主要問題是這個和表有兩行。

謝謝。

當插入完成
+1

你如何將數據傳遞給查詢,換句話說,你如何指定要插入的內容?此外,相當肯定你不需要圍繞你餐桌名稱的標記,但這只是一個提示。 –

回答

0

查詢數據:

connection.query("INSERT INTO `products` (id, name, price)", 
    function (error, results, fields) { 
     connection.query("SELECT * FROM `products`", function (error2, results2, fields2){}); 
}); 
+0

謝謝。是的,我已經嘗試過了,無法傳遞給變量result2。如何處理results2到一個變量,有可能嗎? – jakari

+0

@jakari'results2' _is_變量。 – Evert

0
connection.query("INSERT INTO products(id, name, price)", 
    function (error, results, fields) { 
    if(error) return .... 
    else{ 
     connection.query("SELECT * FROM products", function 
     (error,results,fields2){ 
       var returned_data = results; 
       console.log(results); 
       //res.send(results); 
      }) 
    }}); 

將要走的路,但檢查是否你在插入數據在所有正確的方式,因爲你的避風港沒有提供你這樣做的方式,我懷疑任何異步方法都會使你自己失敗。

編輯要求:您可以將結果傳遞給一個變量,但如果你不這樣做(因爲其範圍),你只能使用該函數內部,即res.send或res.end它(如果你正在使用這個請求,我猜你是),或者console.log它或者只是把它寫入一個文件。

+0

謝謝,你知道任何「第二查詢結果」傳遞給變量的方法嗎? – jakari

+0

我編輯過上面的例子。 –

相關問題