国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

“Node.js:操作mysql數(shù)據(jù)庫(kù)“

這篇具有很好參考價(jià)值的文章主要介紹了“Node.js:操作mysql數(shù)據(jù)庫(kù)“。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Node.js中操作mysql數(shù)據(jù)庫(kù)

? mysql模塊是托管于npm的第三方模塊,它提供了Node.js項(xiàng)目中連接操作mysql數(shù)據(jù)庫(kù)的能力。

在項(xiàng)目中操作數(shù)據(jù)庫(kù)的步驟

(1).安裝mysql數(shù)據(jù)庫(kù)的第三方模塊(mysql)

npm install mysql

(2).通過mysql模塊連接到mysql數(shù)據(jù)庫(kù)

mysql.createPool()

(3).通過mysql模塊執(zhí)行sql語(yǔ)句

db.query()

1.操作mysql數(shù)據(jù)庫(kù)

// 1.導(dǎo)入mysql模塊
const mysql = require('mysql')
// 2.創(chuàng)建與mysql數(shù)據(jù)庫(kù)的連接
const db = mysql.createPool({

    host: '127.0.0.1',          // 數(shù)據(jù)庫(kù)的ip地址
    user: 'root',               // 登錄數(shù)據(jù)庫(kù)的賬號(hào)
    password: 'pancc',          // 登錄數(shù)據(jù)庫(kù)的密碼
    database: 'my_db_01'        // 指定要操作的數(shù)據(jù)庫(kù)
})

// 測(cè)試mysql模塊能否正常運(yùn)行
// 3.執(zhí)行sql語(yǔ)句 
db.query('SELECT 1', (err, results) => {

    if (err) return console.log(err.message)
    console.log(results)        // [ RowDataPacket { '1': 1 } ] 說明數(shù)據(jù)庫(kù)連接正常
})
  • db.query()用來執(zhí)行sql語(yǔ)句
  • sql執(zhí)行成功,err默認(rèn)為null,results為返回的數(shù)據(jù)

2.查詢數(shù)據(jù)

select 字段1,字段2 from 表名

const mysql = require('mysql')
const db = mysql.createPool({

    host: '127.0.0.1',
    user: 'root',
    password: 'pancc',
    database: 'my_db_01'
})
// 查詢user表的所有數(shù)據(jù)
const sqlStr = 'select * from users'
db.query(sqlStr, (err, results) => {

    // 查詢失敗
    if (err) return console.log(err.message)
    // 查詢成功 
    console.log(results)
})
  • 注意: 如果執(zhí)行的是select查詢語(yǔ)句,則results是數(shù)組

3.插入數(shù)據(jù)

insert into 表名 (字段1,字段2) values(值1,值2)

const mysql = require('mysql')
const db = mysql.createPool({

    host: '127.0.0.1',
    user: 'root',
    password: 'pancc',
    database: 'my_db_01'
})
// 待新增的數(shù)據(jù)
const user = { username: '馬超', password: '000000' }
// 待執(zhí)行的sql語(yǔ)句
const sqlStr = 'insert into users (username,password) values(?,?)'
// 執(zhí)行sql語(yǔ)句    
db.query(sqlStr, [user.username, user.password], (err, results) => {  // 

    if (err) return console.log(err.message)
    if (results.affectedRows === 1) {
        console.log('插入數(shù)據(jù)成功!')
    }
})
  • sql中英文?占位符,使用數(shù)組的形式,依次為?占位符指定具體的值
  • 注意: 如果執(zhí)行的是insert插入語(yǔ)句,則results是一個(gè)對(duì)象
  • 可以通過results的affectedRows屬性來判斷是否插入數(shù)據(jù)成功

插入數(shù)據(jù)的簡(jiǎn)便方式

const mysql = require('mysql')
const db = mysql.createPool({

    host: '127.0.0.1',
    user: 'root',
    password: 'pancc',
    database: 'my_db_01'
})
// 待新增的數(shù)據(jù)
const user = { username: '馬超', password: '000000' }
// 待執(zhí)行的sql語(yǔ)句
const sqlStr = 'insert into users set ?'
// 執(zhí)行sql語(yǔ)句    
db.query(sqlStr, [user.username, user.password], (err, results) => {  // 

    if (err) return console.log(err.message)
    if (results.affectedRows === 1) {
        console.log('插入數(shù)據(jù)成功!')
    }
})
  • 向表中新增數(shù)據(jù)時(shí),如果數(shù)據(jù)對(duì)象的每個(gè)屬性和數(shù)據(jù)表字段一一對(duì)應(yīng),就可以以便捷的方式插入數(shù)據(jù)

4.更新數(shù)據(jù)

update 表名 set 字段1=值1,字段2= 值2

const mysql = require('mysql')
const db = mysql.createPool({

    host: '127.0.0.1',
    user: 'root',
    password: 'pancc',
    database: 'my_db_01'
})

// 更新的數(shù)據(jù)對(duì)象
const user = { id: 4, username: '張遼', password: '888888' }
// sql語(yǔ)句
const sqlStr = 'update users set username=?,password=? where id=?'
// 執(zhí)行sql語(yǔ)句
db.query(sqlStr, [user.username, user.password, user.id], (err, results) => {

    if (err) return console.log(err.message)
    if (results.affectedRows === 1) {
        console.log('更新數(shù)據(jù)成功!')
    }
})
  • 注意: 如果執(zhí)行的是update更新語(yǔ)句,則results是一個(gè)對(duì)象

更新數(shù)據(jù)的簡(jiǎn)便方式

const mysql = require('mysql')
const db = mysql.createPool({

    host: '127.0.0.1',
    user: 'root',
    password: 'pancc',
    database: 'my_db_01'
})
// 更新的數(shù)據(jù)對(duì)象
const user = { id: 4, username: '陸遜', password: '777777' }
// sql語(yǔ)句
const sqlStr = 'update users set ? where id=?'
// 執(zhí)行sql
db.query(sqlStr, [user, user.id], (err, results) => {

    if (err) return console.log(err.message)
    if (results.affectedRows === 1) {

        console.log('更新數(shù)據(jù)成功!')
    }
})
  • 向表中更新數(shù)據(jù)時(shí),如果數(shù)據(jù)對(duì)象的每個(gè)屬性和數(shù)據(jù)表字段一一對(duì)應(yīng),就可以以便捷的方式插入數(shù)據(jù)

5.刪除數(shù)據(jù)

delete from 表名

const mysql = require('mysql')
const db = mysql.createPool({

    host: '127.0.0.1',
    user: 'root',
    password: 'pancc',
    database: 'my_db_01'
})

// sql語(yǔ)句
const sqlStr = 'delete from users where id=?'
// 執(zhí)行sql
db.query(sqlStr, 17, (err, results) => {

    if (err) return console.log(err.message)
    // 注意: 執(zhí)行delete語(yǔ)句的時(shí)候,結(jié)果results也是一個(gè)對(duì)象
    if (results.affectedRows === 1) {

        console.log('刪除數(shù)據(jù)成功!')
    }
})
  • 在刪除數(shù)據(jù)時(shí),推薦根據(jù)id這樣的唯一標(biāo)識(shí),來刪除對(duì)應(yīng)的數(shù)據(jù)
  • 如果sql語(yǔ)句中只有一個(gè)占位符,為?占位符指定具體的值,可以省略數(shù)組形式
  • 注意: 執(zhí)行delete語(yǔ)句的時(shí)候,結(jié)果results也是一個(gè)對(duì)象

6.標(biāo)記刪除文章來源地址http://www.zghlxwxcb.cn/news/detail-447672.html

const mysql = require('mysql')
const db = mysql.createPool({

    host: '127.0.0.1',
    user: 'root',
    password: 'pancc',
    database: 'my_db_01'
})
// 標(biāo)記刪除: 使用update語(yǔ)句替代delete語(yǔ)句;只更新數(shù)據(jù)的狀態(tài),并沒有真正刪除
const sqlStr = 'update users set status=? where id=?'
db.query(sqlStr, [1, 4], (err, results) => {

    if (err) return console.log(err.message)
    if (results.affectedRows === 1) {

        console.log('標(biāo)記刪除成功!')
    }
})
  • 使用delete語(yǔ)句,會(huì)把真正的數(shù)據(jù)進(jìn)行刪除。為了保險(xiǎn)起見,推薦使用標(biāo)記刪除,來模擬刪除動(dòng)作。
  • 設(shè)置類似status這樣的狀態(tài)字段,來標(biāo)記當(dāng)前這條數(shù)據(jù)是否被刪除

到了這里,關(guān)于“Node.js:操作mysql數(shù)據(jù)庫(kù)“的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Vue項(xiàng)目通過node連接MySQL數(shù)據(jù)庫(kù)并實(shí)現(xiàn)增刪改查操作

    Vue項(xiàng)目通過node連接MySQL數(shù)據(jù)庫(kù)并實(shí)現(xiàn)增刪改查操作

    1.創(chuàng)建Vue項(xiàng)目 Vue項(xiàng)目創(chuàng)建的詳細(xì)步驟,有需要的可移步這里 2.下載安裝需要的插件 下載express 下載cors,用于處理接口跨域問題 下載mysql 下載axios 3.在項(xiàng)目中創(chuàng)建server文件夾,用于搭建本地服務(wù)器 新建/server/app.js,用于配置服務(wù)器相關(guān)信息 新建/server/db/index.js,用于配置數(shù)據(jù)庫(kù)

    2024年02月16日
    瀏覽(29)
  • node.js之連接數(shù)據(jù)庫(kù)

    node.js之連接數(shù)據(jù)庫(kù)

    我們?nèi)绾卧趎odejs中連接并操作數(shù)據(jù)庫(kù)呢? 讓我為大家解答一下吧! 1.安裝操作MySQL數(shù)據(jù)庫(kù)的第三方塊 (mysql) mysql 模塊是托管于 npm 上的第三方塊。它提供了在 Nodejs 項(xiàng)目中連接和操作 MySQL 數(shù)據(jù)庫(kù)的能力想要在項(xiàng)目中使用它,需要先運(yùn)行如下命令,將mysql安裝為項(xiàng)目的依賴包 2

    2024年01月19日
    瀏覽(37)
  • Node.js連接數(shù)據(jù)庫(kù) 實(shí)現(xiàn)注冊(cè)、登錄、判斷注冊(cè)

    Node.js連接數(shù)據(jù)庫(kù) 實(shí)現(xiàn)注冊(cè)、登錄、判斷注冊(cè)

    Node.js連接數(shù)據(jù)庫(kù)實(shí)現(xiàn)注冊(cè),登錄,在登錄時(shí)檢測(cè)賬號(hào)是否進(jìn)行注冊(cè)。 此創(chuàng)建文件夾可以不是使用Vue-cli進(jìn)行創(chuàng)建,只是簡(jiǎn)單創(chuàng)建文件夾便可。 使用npm進(jìn)行mysql插件的安裝,cmd黑窗口運(yùn)行下列指令 此指令運(yùn)行完成,文件夾根目錄出現(xiàn) node_modules 文件 黑窗口運(yùn)行 npm init 指令,出現(xiàn)

    2024年02月09日
    瀏覽(42)
  • MySQL數(shù)據(jù)庫(kù) – node使用

    MySQL數(shù)據(jù)庫(kù) – node使用

    1 MySQL查詢對(duì)象 2 MySQL查詢數(shù)組 3 mysql2庫(kù)介紹使用 4 mysql2預(yù)處理語(yǔ)句 5 mysql2連接池使用 6 mysql2的Promi 這里僅說明如何使用服務(wù)器連接數(shù)據(jù)庫(kù)并進(jìn)行操作。 預(yù)處理語(yǔ)句就是可以輸入變量的語(yǔ)句(表現(xiàn)形式是有符號(hào):?)。需要使用.execute來執(zhí)行; ? 需要運(yùn)行普通的語(yǔ)句(不添加變

    2024年02月08日
    瀏覽(25)
  • 前端使用node.js連接sql.server數(shù)據(jù)庫(kù)教程

    前端使用node.js連接sql.server數(shù)據(jù)庫(kù)教程

    最近項(xiàng)目中要用到node寫接口然后連接公司現(xiàn)有的sql.server數(shù)據(jù)庫(kù),再把執(zhí)行結(jié)果返回給前端(還是我),因?yàn)橹耙恢弊銮岸诉@塊,后端這方面不是很懂,花了很長(zhǎng)的時(shí)間終于研究出來了(還是太菜了,走了很多彎路),所以寫個(gè)博客,一是復(fù)習(xí)鞏固,二是給其他有需要的小伙伴一個(gè)參考,盡量

    2024年02月11日
    瀏覽(27)
  • 在Node.js中使用MongoDB連接數(shù)據(jù)庫(kù)、創(chuàng)建集合

    在Node.js中使用MongoDB連接數(shù)據(jù)庫(kù)、創(chuàng)建集合

    本文主要介紹在Node.js中使用MongoDB連接數(shù)據(jù)庫(kù)、創(chuàng)建集合的方法。 在Node.js中使用MongoDB連接數(shù)據(jù)庫(kù)有兩種方式:使用原生驅(qū)動(dòng)程序和使用Mongoose。 首先,需要安裝 mongodb 模塊??梢酝ㄟ^以下命令來安裝: 安裝完成后,可以在代碼中引入模塊: 接著,可以使用 MongoClient 來連接

    2024年02月04日
    瀏覽(82)
  • Nodejs 入門8 NeDB 輕量級(jí)的Node.js 數(shù)據(jù)庫(kù)

    Nodejs 入門8 NeDB 輕量級(jí)的Node.js 數(shù)據(jù)庫(kù)

    常用的sqlite輕量級(jí)數(shù)據(jù)庫(kù),nodejs在windows環(huán)境下安裝配置有時(shí)候會(huì)比較麻煩,很難順利安裝。 Nedb(Node Embedded Database)在一些情況下可以替代sqlite,特別適用于小型項(xiàng)目和快速原型開發(fā)。本文將介紹Nedb的基本概念、特性和使用方法,以幫助大家更好地了解和利用這個(gè)便捷的工

    2024年01月22日
    瀏覽(30)
  • 自學(xué)WEB后端05-Node.js后端服務(wù)鏈接數(shù)據(jù)庫(kù)redis

    自學(xué)WEB后端05-Node.js后端服務(wù)鏈接數(shù)據(jù)庫(kù)redis

    嘿,親愛的小伙伴們!?? 今天我要給大家分享一個(gè)超級(jí)方便且高效的 NoSQL 類型數(shù)據(jù)庫(kù)——Redis!?? 它可不是一般的關(guān)系型數(shù)據(jù)庫(kù)哦,而是以鍵值對(duì)形式存儲(chǔ)數(shù)據(jù)的內(nèi)存數(shù)據(jù)庫(kù)。?? 快跟著我一起來學(xué)習(xí)如何安裝和使用 Redis 吧!? 自學(xué)WEB后端01-安裝Express+Node.js框架完成Hello

    2024年02月07日
    瀏覽(34)
  • MySQL的數(shù)據(jù)庫(kù)操作、數(shù)據(jù)類型、表操作

    MySQL的數(shù)據(jù)庫(kù)操作、數(shù)據(jù)類型、表操作

    目錄 一、數(shù)據(jù)庫(kù)操作 (1)、顯示數(shù)據(jù)庫(kù) (2)、創(chuàng)建數(shù)據(jù)庫(kù) (3)、刪除數(shù)據(jù)庫(kù) (4)、使用數(shù)據(jù)庫(kù) 二、常用數(shù)據(jù)類型 (1)、數(shù)值類型 (2)、字符串類型 (3)、日期類型 三、表操作 (1)、創(chuàng)建表 (2)、查看表 (3)、刪除表 都要看到這了,點(diǎn)個(gè)贊再走吧,謝謝謝謝謝

    2024年02月06日
    瀏覽(30)
  • 使用 Next.js 連接 mysql 數(shù)據(jù)庫(kù)

    使用 Next.js 連接 mysql 數(shù)據(jù)庫(kù)

    本文主要為大家介紹,如何使用 Next 框架實(shí)現(xiàn)一個(gè)簡(jiǎn)單的 后端接口 ,并且從 數(shù)據(jù)庫(kù) 中請(qǐng)求數(shù)據(jù)返回給前端。 項(xiàng)目創(chuàng)建完成后在 app?文件下新建api文件夾,在 api 文件夾下新建 getData 文件夾,在 getData 文件夾下新建 route.js,這里面用于存儲(chǔ)我們的接口信息,如下 注意: 在

    2024年02月22日
    瀏覽(32)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包