iT邦幫忙

DAY 16
0

Node.js 系列學習日誌系列 第 16

Node.js 系列學習日誌 #16 - 連接 MySQL 並實現 CRUD 操作 - 資料存取前的準備

今天就來寫一個跟資料庫有關的功能,本章節介紹用 node.js + mysql 的存取,實作新增、修改、刪除、查詢的功能,以下都是以 mac osx 來當作開發環境,因此以下步驟之前請務必安裝 node.js , npm,另外還有 mysql ,您可以透過 http://dev.mysql.com/downloads/mysql/ 來安裝,mysql 安裝的步驟在此就不做介紹,專注在 node.js 與 mysql 存取的方法。

首先我們先建立一個資料夾 nodejs-demo-mysql ,然後要安裝一下相依的套件使用:express, mysql

建立 package.json,請輸入以下的指令按照提示問題回答

$npm init

安裝 express web framework 到這 nodejs-demo-mysql 應用程式專案裡面,並寫入到 package.json

$npm install express —save

完成 express 之後,再安裝 mysql 套件,在這邊安裝 mysql

$npm install mysql@2.0.0-alpha9

首先可以看到 express 套件, node-mysql 就新增到 node_modules 裡了

資料庫的部分,假定先建立一個 demo_nodejs 的資料庫

然後新增 index.js 作為網頁開頭的起始點,宣告 mysql 後,先使用 createConnection 方法將資料庫的參數初始化

var mysql = require('mysql’);
var conn = mysql.createConnection({
    host: 'localhost',
    user: 'nodejs',
    password: 'nodejs',
    database:'demo_nodejs',
    port: 3306
});

將資料庫做個連線的動作

conn.connect();

先測試一下,透過以下的 query 執行,如果有將 12 + 34 有算出來,那麼就代表有連線成功

conn.query('SELECT 12 + 34 AS result', function(err, rows, fields) {
    if (err) throw err;
    console.log('The result is: ', rows[0].result);
}); 

連線成功後,查詢之後務必要將它關閉。

conn.end();

完整程式如下:

執行結果 有將 12 + 34 = 46 算出來囉

參考資料:
http://expressjs.com/
https://github.com/redblaze/node-mysql


上一篇
Node.js 系列學習日誌 #15 - 撰寫程式的風格指南 (Style Guide)
下一篇
Node.js 系列學習日誌 #17 - 連接 MySQL 並實現 CRUD 操作 - 查詢 (Read)
系列文
Node.js 系列學習日誌30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
tsungmin.eth
iT邦新手 4 級 ‧ 2022-03-13 02:13:58

請問 如果我是接續前人的專案新增一些功能,他的後端是用JAVA寫的,資料庫MySQL,用的IDE是Eclipse,而我想增加的部分跟原本的功能不太有關聯(但都在同一個網站上,可能在網頁上方多加一個按鈕連接到我新增的部分)
而我後端比較想用Node.js來寫...這樣會不會有甚麼衝突?

我要留言

立即登入留言