2012-06-17 86 views
1

我試圖插入一個值到我的數據庫,這是mydb和表是用2個字段的用戶名和密碼登錄。我正在使用express.js和MySQL。插入查詢的代碼是錯誤插入:連接ECONNREFUSED

exports.insert = function(req,res){ 
    client.query('insert into' +TABLE+ ' SET username=?,password=?' 
       , [req.body.txtUser,req.body.txtPassword] 
       ,        
        function(err,result){ 
        if(err){ 
          console.log("error in insertion:"+ err.message); 
          } 
        else{ 
          console.log("query executed"); 
          res.json("data inserted"); 
          } 
         } 
       ); 
      } 

當我啓動服務器時,它開始正常; y和給我留言:

的Express服務器在開發模式下偵聽端口3000

但是,當我訪問註冊頁面並插入值並按提交時,會生成以下錯誤

錯誤插入:連接ECONNREFUSED

誰能幫助我嗎?

+0

看來你沒有連接到你的MySQL服務器也可能是錯誤的端口或錯誤的主機 – Mustafa

+0

請我插入qurey是它正確與否請 – fahad

+3

的'ECONNREFUSED'錯誤意味着你沒有連接到MySQL服務器。這與您的查詢無關。 – j0ntech

回答

0

這不是Node.js的問題。一般來說,你無法連接到你的MySQL客戶端。

您需要將MySQL中的訪問權限授予您用於連接的用戶名。授予訪問權限,然後嘗試手動登錄以使用MySQL客戶端或管理工具(如MySQL管理員或命令行mysql客戶端)測試此連接。請記住,在MySQL中,您必須設置爲localhost以及遠程。我相信它仍然只默認爲localhost。例如您需要爲其他主機名明確設置[email protected]*。閱讀MySQL手冊here

一旦你的客戶端工作,那麼你的node.js客戶端應該使用相同的用戶名和設置。

+0

thanku @Ehevutov問題解決acctualy我來自Windows n工作n PHP與wamp自動安裝MySQL服務器,但在Ubuntu的我們必須安裝MySQL服務器,我沒有這樣做後安裝MySQL服務器的問題得到了解決thanx – fahad

相關問題