Sau khi học những kiến thức cơ bản về Node.js, bạn có thể học cách Node.js kết hợp với một server cơ sở dữ liệu nào đó, chẳng hạn như MySQL. Lý do chọn MySQL thì rất đơn giản: tính phổ biến, mã nguồn mở miễn phí và có cộng đồng lập trình viên hỗ trợ lớn.
Cơ sở dữ liệu MySQL
Để thao tác lập trình với MySQL, bạn có thể tải gói XAMPP, bao gồm MySQL tại địa chỉ https://www.apachefriends.org/index.html. Ngoài ra, bạn có thể dùng gói XAMPP để lập trình ngôn ngữ PHP và Perl nếu muốn.
Cài đặt driver MySQL
Sau khi cài đặt MySQL, bạn cần phải cài đặt module mysql để dùng trong Node.js theo câu lệnh:
C:\Users\Dammio\AppData\Roaming\npm>npm install mysql
Sau khi cài đặt xong, chúng ta nhúng module mysql vào Node.js như sau:
var mysql = require('mysql');
Tạo kết nối
Đầu tiên, bạn cần viết đoạn mã kết nối tới database bằng cách dùng username và password lưu trong tập tin dammio_db_connection.js như sau:
var mysql = require('mysql'); var con = mysql.createConnection({ host: "localhost", user: "yourusername", password: "yourpassword" }); con.connect(function(err) { if (err) throw err; console.log("Đã kết nối!"); });
Sau đó, bạn chạy tập tin này ở CMD với lệnh:
C:\Users\Dammio\AppData\Roaming\npm>node dammio_db_connection.js
Nếu bạn bắt gặp dòng chữ “Đã kết nối!” thì có nghĩa là bạn đã kết nối tới server MySQL thành công. Nếu không, bạn hãy kiểm tra lại server MySQL xem bật chưa, thông tin username và password xem có chính xác.
Truy vấn database
Sử dụng các truy vấn SQL để đọc (viết) thông tin từ cơ sở dữ liệu MySQL, điều này được gọi là truy vấn cơ sở dữ liệu. Đối tượng kết nối được tạo trong ví dụ trên, chứa một phương thức để truy vấn:
con.connect(function(err) { if (err) throw err; console.log("Kết nối!"); con.query(sql, function (err, result) { if (err) throw err; console.log("Result: " + result); }); });
Trong ví dụ trên, phương thức truy vấn sử dụng mệnh đề sql (con.query) với tham số và trả về kết quả.
Kết luận
Trong bài này, bạn đã học cách cài đặt module mysql và đoạn mã để kết nối với server mysql. Mời bạn theo dõi bài tiếp theo để học cách truy vấn với MySQL.
- APA:
Dammio. (2018). [Node.js] Phần 11: MySQL. https://www.dammio.com/2018/06/17/node-js-phan-11-mysql.
- BibTeX:
@misc{dammio,
author = {Dammio},
title = {[Node.js] Phần 11: MySQL},
year = {2018},
url = {https://www.dammio.com/2018/06/17/node-js-phan-11-mysql},
urldate = {2024-09-08}
}