我無法將資料插入資料庫。連接到資料庫沒有問題,但是當我嘗試插入表時,它通過錯誤。
錯誤:致命錯誤后無法將查詢排入佇列。
我怎么解決這個問題?有人面臨同樣的問題嗎?
const { redirect } = require("express/lib/response");
const mysql = require('mysql')
let con = mysql.createConnection({
host: process.env.db_host,
database: process.env.db_database,
username: process.env.db_username,
password: process.env.db_password,
port: process.env.db_port
});
con.connect(err=>{
{err===true? console.log(err): console.log("DB connected Successfully!!");;}
})
// Home Page
exports.index = (req,res)=>{
res.render('../views/index', {btnName: 'Save' })
console.log("You are in home page!");
}
// // Add User
// exports.addUser = (req,res)=>{
// res.render('adduser')
// }
exports.adduserpost = (req,res)=>{
const {fname, mname, lname, email, phone} = req.body; //store value from adduser
// console.log({fname, mname, lname, email, phone});
let sql = 'INSERT INTO user_info (fname, mname, lname, email, phone) VALUES (?,?,?,?,?)';
con.query(sql,[fname, mname, lname, email, phone],
(err,result)=>{
if(!err) console.log(result);
else console.log( err);
})
通過這樣的錯誤。
Server connected successfully!!
DB connected Successfully!!
Error: Cannot enqueue Query after fatal error.
at Protocol._validateEnqueue (F:\Project\User_Information_System_v2\node_modules\mysql\lib\protocol\Protocol.js:212:16)
at Protocol._enqueue (F:\Project\User_Information_System_v2\node_modules\mysql\lib\protocol\Protocol.js:138:13)
at Connection.query (F:\Project\User_Information_System_v2\node_modules\mysql\lib\Connection.js:198:25)
at exports.adduserpost (F:\Project\User_Information_System_v2\server\controller\userController.js:53:5)
at Layer.handle [as handle_request] (F:\Project\User_Information_System_v2\node_modules\express\lib\router\layer.js:95:5)
at next (F:\Project\User_Information_System_v2\node_modules\express\lib\router\route.js:137:13)
at Route.dispatch (F:\Project\User_Information_System_v2\node_modules\express\lib\router\route.js:112:3)
at Layer.handle [as handle_request] (F:\Project\User_Information_System_v2\node_modules\express\lib\router\layer.js:95:5)
at F:\Project\User_Information_System_v2\node_modules\express\lib\router\index.js:281:22
at Function.process_params (F:\Project\User_Information_System_v2\node_modules\express\lib\router\index.js:341:12) {
code: 'PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR',
fatal: false
}
uj5u.com熱心網友回復:
您應該更改connect錯誤檢查條件。如果作為物件存在,也將顯示
通過使用err===true該訊息。
嘗試像這樣更改您的代碼,看看它是否記錄任何錯誤訊息:DB connected Successfully!!err
con.connect(err=>{
if(err) {
console.log(err);
process.exit(1);
}
console.log("DB connected Successfully!!")
})
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/411360.html
標籤:
