日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

完善获取数据库数据的写法

發布時間:2024/7/5 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 完善获取数据库数据的写法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

上一篇:使用express搭建服務器獲取MySQL數據庫數據

一、完善獲取數據庫數據的寫法

async+await版本

const express = require('express') const db = require('./db/nodejs-orm/index.js')const app = express()app.get("/get_data", (req, res) => {// 查詢數據庫,返回到瀏覽器// 創建模型,需要操作哪個數據表(async function get_data() {let Stuinfo = db.model("stuinfo")let result = await new Promise((resolve, reject)=> {Stuinfo.find((err, data) => {if(err){reject(err)}resolve(data)})})res.send(result) })() })app.listen(3000, () => {console.log("服務器已經啟動,端口為:3000") })

帶捕獲異常的版本:

const express = require('express') const db = require('./db/nodejs-orm/index.js')const app = express()app.get("/get_data", (req, res) => {// 查詢數據庫,返回到瀏覽器// 創建模型,需要操作哪個數據表(async function get_data() {let Stuinfo = db.model("stuinfo")let resulttry {result = await new Promise((resolve, reject)=> {Stuinfo.find((err, data) => {if(err){reject(err)}resolve(data)})})} catch (error) {console.log(error)res.send({errMsg:"數據庫查詢出錯"})return;} res.send(result) })() })app.listen(3000, () => {console.log("服務器已經啟動,端口為:3000") })

二、封裝handleDB

handle.js:

const db = require('./nodejs-orm/index.js')// res:請求對象 // tableName:需要進行查詢操作的表名 // methodName:進行哪種操作(增刪改查) // errMsg:如果數據庫操作出錯,自定義返回什么樣的錯誤信息 // n1:字符串或字典或列表 // n2:字符串或字典或列表 async function handleDB(res, tableName, methodName, errMsg, n1, n2) {// console.log('handleDB方法執行')let Model = db.model(tableName)let resulttry {result = await new Promise((resolve, reject) => {// Model.find("",(err, data) => {// Model["find"]("",(err, data) => {if(!n1) {// 沒有傳遞n1,即一個參數都沒有傳Model[methodName]((err, data) => {if (err) {reject(err)}resolve(data)})return;}// 程序能夠執行到這里,說明傳遞了n1參數if(!n2) {// 只傳遞了n1參數,沒有傳遞n2參數Model[methodName](n1,(err, data) => {if (err) {reject(err)}resolve(data)})return;}// 程序能夠執行到這里,說明傳遞了n1,n2參數Model[methodName](n1,n2,(err, data) => {if (err) {reject(err)}resolve(data)})})} catch (error) {console.log(error)res.send({ errMsg: errMsg})return;}return result }module.exports = handleDB

在項目中使用:

const express = require('express') const handleDB = require('./db/handleDB.js')const app = express()app.get("/get_data", (req, res) => {// 查詢數據庫,返回到瀏覽器// 需要操作哪個數據表// 什么操作: 增刪改查這些方法名(async function get_data() {let result = await handleDB(res, "stuinfo", "update", "數據修改錯誤", "age= 22",{sex: '未知'})res.send(result) })() })app.listen(3000, () => {console.log("服務器已經啟動,端口為:3000") })

總結

以上是生活随笔為你收集整理的完善获取数据库数据的写法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。