理解關聯式資料庫與NoSQL之後,要學的是怎麼在NodeJS中使用資料庫相關的套件,今天內容是以MySQL為主,並以資料的讀取說明關聯式資料庫在NodeJS中的應用方法。
MySQL過去是一個開放程式碼的關聯式資料庫管理系統,由於效能高、低成本且穩定性高,廣泛被使用在網頁系統上,例如:維基百科、google、Facebook等,目前為Oracle旗下產品,分為免費的社群版、付費的標準版與商業版,可以透過MySQL Workbench作為資料庫管理工具。
require()
引用mysql套件。。let mysql = require("mysql");
app.use("/", (req, res, next)=>{
});
mysql.createConnection()
方法在中建層中建立一個連到指定資料庫的連線。app.use("/", (req, res, next)=>{
let con = mysql.createConnection({
host: "localhost",
port: 8889,
user: "root",
passwort: "root",
database: "nodeProj"
});
});
app.use("/", (req, res, next)=>{
let con = mysql.createConnection({
host: "localhost",
port: 8889,
user: "root",
passwort: "root",
database: "nodeProj"
});
conn.query(con.query(`select person.id, firstName, lastName, address from person
inner join personAddress on person.id = personAddress.Id inner join Address on
personAddress.addrId = Address.addrId`,
(err, rows)=>{
if(err) throw err;
console.log(rows);
});
next();
});
關聯式資料庫可用SQL語法將分開的關聯資料表,互相join取得想要的結果。最後的輸出成果可以發現mysql的NPM套件會將關聯式資料庫所紀錄的表格式資料轉換為JSON格式的資料列,使資料在JavaScript的語法下能靈活使用。
https://zh.wikipedia.org/wiki/MySQL
https://npmcompare.com/compare/mysql,mysql2