Rumah  >  Artikel  >  hujung hadapan web  >  Pembelajaran praktikal: Mari kita bincangkan tentang cara Node.js mengendalikan pangkalan data

Pembelajaran praktikal: Mari kita bincangkan tentang cara Node.js mengendalikan pangkalan data

青灯夜游
青灯夜游ke hadapan
2022-12-15 21:14:512729semak imbas

Artikel ini berkongsi pengalaman praktikal pelayan Node.js dan memperkenalkan kaedah Node untuk mengendalikan pangkalan data saya harap ia akan membantu semua orang!

Pembelajaran praktikal: Mari kita bincangkan tentang cara Node.js mengendalikan pangkalan data

Siri ini menggunakan nod sebagai rekod proses operasi pembangunan pelayan Rekod kandungan utama dan atur konteks proses untuk bermula dengan. Kaedah sarjana merekodkan kandungan pembelajaran dan secara beransur-ansur mempelajari nod dari 0 hingga 1. Rangka kerja nod berdasarkan ekspres digunakan dalam tutorial. [Cadangan tutorial berkaitan: tutorial video nodejs, Pengajaran pengaturcaraan]

Menyambung ke pangkalan data

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) //查询语句返回的是数组
  }
})

Kali pertama saya menyambung ke pangkalan data, ralat dilaporkan serta-merta. Apa lagi yang boleh saya lakukan di Google

ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client

Pembelajaran praktikal: Mari kita bincangkan tentang cara Node.js mengendalikan pangkalan data

Ini mungkin bermakna itu. ia melibatkan beberapa isu kebenaran operasi, yang memerlukan Kami melaksanakan pernyataan ini dalam pangkalan data Jika tiada ralat dilaporkan, anda boleh melangkau langkah ini.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '这个地方替换成你的数据库密码';

Hanya laksanakannya dalam mysqlworkbrench, dan kemudian kembali ke kod kami untuk terus menyambung ke pangkalan data

Pembelajaran praktikal: Mari kita bincangkan tentang cara Node.js mengendalikan pangkalan data

Apabila pernyataan ini dikeluarkan Ia bertukar bahawa sambungan berjaya

Pembelajaran praktikal: Mari kita bincangkan tentang cara Node.js mengendalikan pangkalan data

masukkan pernyataan

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)
    }
})

Pembelajaran praktikal: Mari kita bincangkan tentang cara Node.js mengendalikan pangkalan data

affectedRows In order untuk mempengaruhi baris, bilangan baris yang terjejas ialah 1, menunjukkan bahawa pernyataan sisipan berjaya dilaksanakan, jadi kita boleh mengubah suai penghakiman sisipan yang berjaya

 if(res.affectedRows == 1){
    console.log('insert success')
}

Permudahkan sql baharu

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')
    }
})

kemas kini pernyataan

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)=>{
})

padam pernyataan

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')
    }
})

Untuk lebih banyak pengetahuan berkaitan nod, sila lawati: tutorial nodejs!

Atas ialah kandungan terperinci Pembelajaran praktikal: Mari kita bincangkan tentang cara Node.js mengendalikan pangkalan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:juejin.cn. Jika ada pelanggaran, sila hubungi admin@php.cn Padam