Node.js 系列學習日誌#7 - 連接 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,請輸入以下的指令按照提示問題回答

1
$npm init

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

1
$npm install express —save

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

1
$npm install mysql@2.0.0-alpha9

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

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

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

1
2
3
4
5
6
7
8
var mysql = require('mysql');
var conn = mysql.createConnection({
host: 'localhost',
user: 'nodejs',
password: 'nodejs',
database:'demo_nodejs',
port: 3306
});

將資料庫做個連線的動作

1
conn.connect();

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

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

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

1
conn.end();

完整程式如下:

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

參考資料: