Cách INSERT dữ liệu vào database MySQL bằng Node.js
Hướng dẫn cách sử dụng Prepared Statements trong Node.js để chèn dữ liệu vào bảng trong database MySQL một cách an toàn và hiệu quả, với nhiều tham số.
Trong bài viết này, bạn sẽ học cách sử dụng Node.js để kết nối đến một database MySQL và chèn dữ liệu vào bảng sử dụng Prepared Statements với nhiều tham số, giúp bảo vệ dữ liệu khỏi các cuộc tấn công SQL injection.
const mysql = require('mysql');
// Tạo kết nối đến database MySQL
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'test_db'
});
// Kết nối đến MySQL
connection.connect((err) => {
if (err) throw err;
console.log('Đã kết nối đến database MySQL');
// Câu lệnh INSERT với Prepared Statement
const insertQuery = 'INSERT INTO students (name, age, address) VALUES (?, ?, ?)';
const params = ['John Doe', 25, '123 Main St'];
// Thực hiện câu lệnh INSERT
connection.query(insertQuery, params, (error, results) => {
if (error) throw error;
console.log(`Đã chèn thành công ${results.affectedRows} bản ghi`);
// Đóng kết nối sau khi hoàn tất
connection.end();
});
});
Giải thích chi tiết từng dòng code:
const mysql = require('mysql');
: Import modulemysql
để có thể kết nối và tương tác với MySQL.const connection = mysql.createConnection({...})
: Tạo một kết nối đến database MySQL với các thông tin cần thiết nhưhost
,user
,password
, vàdatabase
.connection.connect((err) => {...})
: Kết nối đến MySQL và xử lý lỗi nếu có.const insertQuery = 'INSERT INTO students (name, age, address) VALUES (?, ?, ?)';
: Định nghĩa câu lệnh INSERT với các tham số (dấu?
đại diện cho các giá trị sẽ được truyền vào).const params = ['John Doe', 25, '123 Main St'];
: Định nghĩa một mảng chứa các giá trị cần chèn vào bảng.connection.query(insertQuery, params, (error, results) => {...})
: Thực hiện câu lệnh INSERT với các tham số đã khai báo.console.log(...)
: In ra số lượng bản ghi đã chèn thành công.connection.end();
: Đóng kết nối đến database sau khi hoàn tất.
Yêu cầu hệ thống:
- Node.js
- Thư viện:
mysql
Cách cài đặt các thư viện để chạy được đoạn mã Node.js trên:
Sử dụng npm để cài đặt thư viện mysql
:
npm install mysql
Lời khuyên:
- Hãy đảm bảo rằng MySQL server của bạn đang chạy trước khi thực hiện kết nối.
- Kiểm tra kỹ các thông tin kết nối như
host
,user
,password
, vàdatabase
để tránh lỗi kết nối. - Sử dụng Prepared Statements để tránh các cuộc tấn công SQL injection.