2014年10月15日 星期三

『Node.js』連接 MySQL 並實現 CRUD 操作 (Create, Read, Update, Delete) - 資料存取前的準備

今天就來寫一個跟資料庫有關的功能,本章節介紹用 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

沒有留言:

張貼留言