Tóm tắt : trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách xóa dữ liệu trong cơ sở dữ liệu MySQL khỏi ứng dụng node.js.
Để xóa dữ liệu trong cơ sở dữ liệu MySQL khỏi ứng dụng node.js, bạn làm theo các bước sau:
- Thiết lập kết nối tới cơ sở dữ liệu MySQL .
- Thực thi một
DELETE
câu lệnh bằng cách gọi query()
phương thức trên một Connection
đối tượng. - Ngắt kết nối khỏi máy chủ cơ sở dữ liệu MySQL.
Để thiết lập kết nối đến máy chủ cơ sở dữ liệu MySQL, chúng tôi sẽ sử dụng config.js
mô-đun sau:
let config = { host : 'localhost', user : 'root', password: '', database: 'todoapp' }; module.exports = config;
Ngôn ngữ mã: JavaScript ( javascript )
Mô config.js
-đun chứa thông tin cần thiết để thiết lập kết nối cơ sở dữ liệu bao gồm host
, user
, password
và database
.
Bạn cần thay đổi các giá trị này để điều chỉnh chúng với tham số của máy chủ cơ sở dữ liệu MySQL của bạn.
Ví dụ xóa dữ liệu
Chương trình sau đây delete.js
xóa một hàng trong todos
bảng dựa trên id của hàng.
let mysql = require('mysql'); let config = require('./config.js'); let connection = mysql.createConnection(config); let sql = `DELETE FROM todos WHERE id = ?`; connection.query(sql, 1, (error, results, fields) => { if (error) return console.error(error.message); console.log('Deleted Row(s):', results.affectedRows); }); connection.end();
Ngôn ngữ mã: JavaScript ( javascript )
Trong ví dụ này, chúng tôi đã sử dụng một trình giữ chỗ (?) trong DELETE
câu lệnh. Khi chúng ta gọi query()
phương thức trên connection
đối tượng để thực thi câu lệnh, chúng ta đã chuyển dữ liệu cho DELETE
câu lệnh dưới dạng đối số thứ hai. Trình giữ chỗ sẽ được thay thế bằng giá trị đầu vào, do đó id
sẽ nhận giá trị 1 khi truy vấn được thực thi.
DELETE FROM todos WHERE id = 1
Ngôn ngữ mã: JavaScript ( javascript )
Lưu ý rằng nếu bạn có nhiều chỗ dành sẵn, bạn cần chuyển một mảng tới truy vấn để chuyển dữ liệu tới câu lệnh SQL.
Để lấy số hàng đã xóa, bạn có thể truy cập thuộc affectedRows
tính của results
đối số.
Trước khi thực hiện chương trình, hãy kiểm tra hàng có id 1 trong todos
bảng:
>node delete.js Deleted Row(s): 1
Ngôn ngữ mã: JavaScript ( javascript )
Số hàng đã xóa là 1. Bạn có thể xác minh nó trong cơ sở dữ liệu bằng cách sử dụng SELECT
câu lệnh sau:
mysql> SELECT * FROM todos WHERE id = 1; Empty set (0.00 sec)
Ngôn ngữ mã: JavaScript ( javascript )
Như bạn có thể thấy, hàng có id 1 đã bị xóa khỏi todos
bảng.
Trong hướng dẫn này, bạn đã học cách xóa dữ liệu trong MySQL khỏi ứng dụng node.js.