站長資訊網
最全最豐富的資訊網站

實戰學習:聊聊Node.js怎么操作數據庫

本篇文章分享Node.js服務端實戰,介紹一下Node操作數據庫的方法,希望對大家有所幫助!

實戰學習:聊聊Node.js怎么操作數據庫

node.js極速入門課程:進入學習

本系列是使用node作為服務器開發的操作過程記錄,記錄一下主要的內容并且整理過程的脈絡,以初學者的方式將學習內容記錄下來,從0到1逐步的學習node,教程使用過程中用到的是基于express的node框架。【相關教程推薦:nodejs視頻教程、編程教學】

連接數據庫

const mysql = require('mysql') const db = mysql.createPool({   host: 'localhost',   user: 'root',   password: '123123123',   database: 'test',   insecureAuth : true }) const sql = `select *  from new_table` db.query(sql, (err, results) => { //   console.log(err)   if(err){     console.log(err.message)   }else{     console.log(results) //查詢語句返回的是數組   } })
登錄后復制

第一次連接數據庫馬上就報錯了,還能怎么辦呢,直接谷歌搜吧

ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
登錄后復制

實戰學習:聊聊Node.js怎么操作數據庫

大概意思是涉及到一些操作權限的問題,需要我們到數據庫中執行這個語句,如果沒報錯的話大家可以跳過這個步驟。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '這個地方替換成你的數據庫密碼';
登錄后復制

在mysqlworkbrench中執行一下即可,然后回到我們的代碼中繼續執行連接數據庫的操作

實戰學習:聊聊Node.js怎么操作數據庫

當輸出這個語句的時候證明已經是連接成功的了

實戰學習:聊聊Node.js怎么操作數據庫

insert語句

const obj = {     name:'xiaoma',     password:'666666' } const insertSql = `insert into new_table (name,password) values (?,?)` db.query(insertSql,[obj.name,obj.password],(err,res)=>{     if(err){         console.log(err.message)     }else{         console.log(res)     } })
登錄后復制

實戰學習:聊聊Node.js怎么操作數據庫

affectedRows為影響行,影響行數為1說明執行insert語句成功,所以我們這邊可以修改一下insert成功的判斷

 if(res.affectedRows == 1){     console.log('insert success') }
登錄后復制

簡化新增sql

const obj = {     name:'xiaoma',     password:'123123' } const insertSql = `insert into new_table SET ?` db.query(insertSql,obj,(err,res)=>{     if(err){         console.log(err.message)     }     if(res.affectedRows == 1){         console.log('insert success')     } })
登錄后復制

update語句

const updateSql = `Update  new_table set  name=? ,password=? where id=?` // const insertSql = `insert into new_table SET ?` db.query(updateSql,[obj.name,obj.password,obj.id],(err,res)=>{     if(err){         console.log(err.message)     }     if(res.affectedRows == 1){         console.log('insert success')     } })  //簡化寫法 const updateSql = `Update  new_table set ? where id=?` db.query(updateSql,[obj,obj.id],(err,res)=>{ })
登錄后復制

delete語句

const updateSql = `delete from  new_table  where id=?` db.query(updateSql,5,(err,res)=>{     if(err){         console.log(err.message)     }     if(res.affectedRows == 1){         console.log('insert success')     } })
登錄后復制

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
中日韩精品电影推荐网站| 日韩亚洲综合精品国产| 91精品国产自产在线观看永久∴| 中文字幕在线精品视频入口一区| 国产福利精品在线观看| 日韩成人免费视频播放| 亚洲AV日韩AV永久无码久久| 日韩精品中文字幕在线| 亚洲国产精品无码久久| 国产精品爽爽va在线观看网站| 精品日韩亚洲AV无码| 少妇伦子伦精品无码STYLES| 久久精品国产91久久麻豆自制 | 国产精品无码无在线观看| 精品久久国产一区二区三区香蕉| 午夜三级国产精品理论三级 | 亚洲精品无码午夜福利中文字幕| 精品一区二区三区在线观看| 国产成人久久精品二区三区| 一本大道无码日韩精品影视_| 国产日韩精品一区二区在线观看 | 久久国产精品无码网站| 国产精品成人小电影在线观看| 大桥未久在线精品视频在线| 日本午夜精品理论片A级APP发布| 日韩精品国产一区| 国产精品日韩欧美一区二区三区| 日韩高清在线中文字带字幕| 亚洲日韩中文无码久久| 最新日韩精品中文字幕 | 99aiav国产精品视频| 99热这里有精品| 亚洲蜜芽在线精品一区| 亚洲一区二区三区精品视频| 久久99精品久久久大学生| 91精品日韩人妻无码久久不卡| 亚洲中文久久精品无码1| 久久频这里精品99香蕉久| 无码国内精品久久综合88| 日韩精品一卡2卡3卡4卡新区乱码| 成人精品一区二区电影|