最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Node.js連接數據庫實現過程詳解

 更新時間:2022年12月14日 09:15:00   作者:魚露  
這篇文章主要為大家介紹了Node.js連接數據庫實現過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

創(chuàng)建數據庫

在前面的數據庫入門中我們講解了常用的sql語法以及實戰(zhàn),接下來我們來介紹一下如何在nodejs中使用數據庫

在前面的文章中我們有手把手使用docker創(chuàng)建數據庫,這里就直接沿用之前創(chuàng)建的數據庫

首先啟動docker,把之前的mysql容器運行起來

然后登入mysql客戶端查看一下現有的數據庫,以及user表

mysql

在前面我們已經使用mysql自帶的客戶端連接數據庫進行一些操作, 到了node.js中我們可以用mysql這個npm包來連接mysql數據庫,這個包也同樣實現了mysql協(xié)議

首先安裝一下依賴,

pnpm install mysql

按照文檔配置好連接數據庫的參數

const mysql = require('mysql');
const connection = mysql.createConnection({
  host: '127.0.0.1',
  user: 'root',
  password: 'password',
  database: 'jym',
  port: '2333',
});
connection.connect();
connection.query('SELECT * FROM Users', function (error, results, fields) {
  if (error) throw error;
  console.log('The solution is: ', results[0].solution);
});
connection.end();

運行之后出現了下面這個錯誤,似乎是mysql這個npm包不支持mysql8導致的,具體可以查看這個issue

'Client does not support authentication protocol requested by server; consider upgrading MySQL client',

沒辦法,只能換一個npm包試試看了

pnpm uninstall mysql
pnpm install mysql2

mysql2的語法和mysql那個基本一樣

// get the client
const mysql = require('mysql2');
// create the connection to database
const connection = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  database: 'jym',
  password: 'password'
});
connection.connect();
connection.query('SELECT * FROM user', function (error, results, fields) {
  if (error) throw error;
  console.log('The solution is: ', JSON.stringify(results));
});
connection.end();

運行結果如下,可以看到下面的數據和上方使用mysql客戶端查出來結果一致

The solution is:  [{"name":"jym","age":"1"},{"name":"jym2","age":"2"},{"name":"jym3","age":"3"},{"name":"jym4","age":"4"}]

通過mysql2這個包,我們就可以用node.js連接數據庫了,可以使用一些基礎的API來直接操作mysql數據庫;比如上面的代碼中就執(zhí)行了'SELECT * FROM user'這個sql語句

除了使用這種基礎庫之外,我們還可以使用ORM(對象關系映射器)框架來連接數據庫,直接用OOP的方式來編寫模型和方法,ORM框架會幫助你生成對應的sql語句,這樣就可以把關注點放在業(yè)務上面,而不用編寫SQL語句。這可以讓你的代碼更加簡潔和可維護

目前在nodejs中常用的ORM有prisma,sequlize,typeorm等等,下回我們就來嘗試一下如何用ORM來連接數據庫

以上就是Node.js連接數據庫實現過程詳解的詳細內容,更多關于Node.js連接數據庫的資料請關注腳本之家其它相關文章!

相關文章

  • 一文搞懂npm?install?意義

    一文搞懂npm?install?意義

    我們在安裝依賴包的時候,不需要過多的去糾結是使用?-S?還是?-D?呢??隨便安裝到?dependencies?或者?devDependencies?里都行,反正?npm?install的時候,都會安裝dependencies?和?devDependencies依賴,今天通過本文學習npm?install意義,感興趣的朋友跟隨小編一起看看吧
    2022-12-12
  • NodeJs中的VM模塊詳解

    NodeJs中的VM模塊詳解

    這篇文章主要介紹了NodeJs中的VM模塊詳解,本文講解了什么是VM? 、VM模塊的runInThisContext、runInThisContext方法等內容,需要的朋友可以參考下
    2015-05-05
  • npm報錯:無法將"npm"項識別為cmdlet、函數、腳本文件或可運行程序的名稱

    npm報錯:無法將"npm"項識別為cmdlet、函數、腳本文件或可運行程序的名稱

    這篇文章主要給大家介紹了關于npm報錯:無法將"npm"項識別為cmdlet、函數、腳本文件或可運行程序的名稱的相關資料,文中將解決的辦法介紹的非常詳細,需要的朋友可以參考下
    2023-02-02
  • import與export在node.js中的使用詳解

    import與export在node.js中的使用詳解

    本篇文章主要介紹了import與export在node.js中的使用詳解,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Node.js控制器Controller使用教程

    Node.js控制器Controller使用教程

    這篇文章主要介紹了Node.js控制器Controller使用教程,一個控制器的目的是接收應用程序的特定請求。路由機制控制哪個控制器接收哪些請求。通常,每個控制器有一個以上的路由,不同的路由可以執(zhí)行不同的動作
    2023-04-04
  • Nodejs express框架一個工程中同時使用ejs模版和jade模版

    Nodejs express框架一個工程中同時使用ejs模版和jade模版

    這篇文章主要介紹了Nodejs express框架一個工程中同時使用ejs模版和jade模版 的相關資料,需要的朋友可以參考下
    2015-12-12
  • Node.JS使用Sequelize操作MySQL的示例代碼

    Node.JS使用Sequelize操作MySQL的示例代碼

    Node.JS提供了操作數據庫的基礎接口,本篇文章主要介紹了Node.JS使用Sequelize操作MySQL的示例代碼,具有一定的參考價值,有興趣的可以了解一下
    2017-10-10
  • Node.js服務器環(huán)境下使用Mock.js攔截AJAX請求的教程

    Node.js服務器環(huán)境下使用Mock.js攔截AJAX請求的教程

    Mock.js這個JavaScript庫最常見的用法便是被用來攔截AJAX請求,well,這里我們就來看一下Node.js服務器環(huán)境下使用Mock.js攔截AJAX請求的教程:
    2016-05-05
  • 詳解Node.js包的工程目錄與NPM包管理器的使用

    詳解Node.js包的工程目錄與NPM包管理器的使用

    這篇文章主要介紹了Node.js包的工程目錄與NPM包管理器的使用,可以幫助編程者更好地組織Node.js代碼文件,需要的朋友可以參考下
    2016-02-02
  • node puppeteer(headless chrome)實現網站登錄

    node puppeteer(headless chrome)實現網站登錄

    這篇文章主要介紹了node puppeteer(headless chrome)實現網站登錄,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05

最新評論

龙游县| 织金县| 榆社县| 井冈山市| 施甸县| 武冈市| 甘孜| 山阳县| 大方县| 本溪| 建平县| 鹿邑县| 翁源县| 泾阳县| 嘉义县| 四平市| 岱山县| 根河市| 专栏| 体育| 库车县| 蓝田县| 台南县| 莎车县| 河源市| 黄浦区| 忻州市| 柞水县| 青神县| 二连浩特市| 深水埗区| 额济纳旗| 镇坪县| 高密市| 三都| 宣恩县| 香河县| 尼玛县| 闵行区| 建始县| 浑源县|