欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Node.js連接數(shù)據(jù)庫實現(xiàn)過程詳解

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

創(chuàng)建數(shù)據(jù)庫

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

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

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

然后登入mysql客戶端查看一下現(xiàn)有的數(shù)據(jù)庫,以及user表

mysql

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

首先安裝一下依賴,

pnpm install mysql

按照文檔配置好連接數(shù)據(jù)庫的參數(shù)

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();

運行之后出現(xiàn)了下面這個錯誤,似乎是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();

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

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

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

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

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

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

相關文章

  • nodejs之請求路由概述

    nodejs之請求路由概述

    這篇文章主要介紹了nodejs的請求路由概述,需要的朋友可以參考下
    2014-07-07
  • 使用cluster 將自己的Node服務器擴展為多線程服務器

    使用cluster 將自己的Node服務器擴展為多線程服務器

    nodejs在v0.6.x之后 增加了一個模塊 cluster 用于實現(xiàn)多進程,利用child_process模塊來創(chuàng)建和管理進程,增加程序在多核CPU機器上的性能表現(xiàn)。本文將介紹利用cluster模塊創(chuàng)建的多線程的問題。
    2014-11-11
  • nodeJS與MySQL實現(xiàn)分頁數(shù)據(jù)以及倒序數(shù)據(jù)

    nodeJS與MySQL實現(xiàn)分頁數(shù)據(jù)以及倒序數(shù)據(jù)

    這篇文章主要介紹了nodeJS與MySQL實現(xiàn)分頁數(shù)據(jù)以及倒序數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • 使用Node.js插件給指定目錄下的所有圖片添加上文字水印

    使用Node.js插件給指定目錄下的所有圖片添加上文字水印

    加水印是為了保護圖片的版權和安全,在互聯(lián)網(wǎng)上,很容易將圖片下載或者截屏保存下來,然后進行二次使用,這就侵犯了原作者的版權,此外,水印也可以幫助識別圖片的來源和所有者,因此本文給大家介紹了如何使用Node.js插件給指定目錄下的所有圖片添加上文字水印
    2023-12-12
  • ajax +NodeJS 實現(xiàn)圖片上傳實例

    ajax +NodeJS 實現(xiàn)圖片上傳實例

    本篇文章主要介紹了ajax +NodeJS 實現(xiàn)圖片上傳實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • node刪除、復制文件或文件夾示例代碼

    node刪除、復制文件或文件夾示例代碼

    這篇文章主要給大家介紹了關于node刪除、復制文件或文件夾的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用node具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-08-08
  • 手動下載Chrome并解決puppeteer無法使用問題

    手動下載Chrome并解決puppeteer無法使用問題

    本篇文章主要介紹了手動下載Chrome并解決puppeteer無法使用問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • Node.js開發(fā)之訪問Redis數(shù)據(jù)庫教程

    Node.js開發(fā)之訪問Redis數(shù)據(jù)庫教程

    這篇文章主要介紹了Node.js開發(fā)之訪問Redis數(shù)據(jù)庫教程,本文講解了安裝Redis的Node.js驅動、編寫測試程序以及npm遠程服務器連接十分緩慢的解決方法,需要的朋友可以參考下
    2015-01-01
  • 從零開始學習Node.js系列教程之設置HTTP頭的方法示例

    從零開始學習Node.js系列教程之設置HTTP頭的方法示例

    這篇文章主要介紹了Node.js設置HTTP頭的方法,詳細分析了常見HTTP頭的功能、原理及相關設置操作技巧,需要的朋友可以參考下
    2017-04-04
  • Node.js中MongoDB查詢數(shù)據(jù)的方法

    Node.js中MongoDB查詢數(shù)據(jù)的方法

    在Node.js中,可以使用MongoDB驅動程序和Mongoose庫來進行MongoDB的查詢操作,本文就來介紹一下Node.js中MongoDB查詢數(shù)據(jù)的方法,感興趣的可以了解一下
    2023-12-12

最新評論