이 글은 Node.js 서버의 실제 경험을 공유하고 Node가 데이터베이스를 어떻게 운영하는지 소개합니다. 모든 분들께 도움이 되길 바랍니다!
이 시리즈는 node를 사용하여 서버 개발의 운영 과정을 기록하고, 학습 내용을 초급자 방식으로 정리하여 0부터 1까지 단계별로 학습합니다. node, Express 기반 노드 프레임워크가 튜토리얼에서 사용됩니다. [추천 관련 튜토리얼: 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) //查询语句返回的是数组 } })
처음으로 데이터베이스에 연결할 때 즉시 오류가 발생했습니다. Google에서 검색
ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
아마도 작업 권한 문제가 있다는 뜻일 것입니다. 오류가 보고되지 않으면 이 단계를 건너뛸 수 있습니다.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '这个地方替换成你的数据库密码';
mysqlworkbrench에서 실행한 다음 코드로 돌아가서 데이터베이스에 계속 연결하세요
이 명령문이 출력되면 연결이 성공한 것을 증명합니다
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) } })
affectedRows는 영향을 받은 행의 개수가 1입니다. 이는 삽입 문이 성공적으로 실행되었음을 의미하므로 여기서 삽입 성공 여부의 판단을 수정할 수 있습니다
if(res.affectedRows == 1){ console.log('insert success') }
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') } })
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)=>{ })
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') } })
노드 관련 지식을 더 보려면 nodejs 튜토리얼을 방문하세요!
위 내용은 실전 학습: Node.js가 데이터베이스를 작동하는 방법에 대해 이야기해 보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!