日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

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

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

上一篇:使用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") })

總結

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

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