NodeJS 使用 mysql2 連線 MySQL
Node 連線 MySQL 資料庫,常用的套件為 mysql 和 mysql2。mysql 是比較資深的套件,但缺點是沒有直接支援 Promise,所以在使用上若要使用 Promise 需要使用 bluebird 之類的套件。
mysql2 標榜更快,支援 Promise。以下為連線的 module ( db_connect2.js ):
const mysql = require('mysql2');
const pool = mysql.createPool({
host: 'localhost',
user: 'root',
password: 'root',
database: 'test',
waitForConnections: true,
connectionLimit: 10, // 最大連線數
queueLimit: 0
});
module.exports = pool.promise(); // 滙出 promise pool
在 express.js 使用上的例子:
const db = require(__dirname + '/db_connect2');
app.get('/try-db', (req, res)=>{
const sql = "SELECT * FROM address_book LIMIT 3";
db.query(sql).then(([results, fields])=>{
res.json(results);
});
});
沒有留言:
張貼留言