Theo như tôi biết, hầu hết các cơ sở dữ liệu quan hệ không cung cấp bất kỳ API cấp trình điều khiển nào cho các truy vấn, ngoại trừ một query
hàm lấy chuỗi SQL làm đối số.
Tôi đang nghĩ sẽ dễ dàng hơn thế nào nếu có thể làm:
var result = mysql.select('article', {id: 3})
Đối với các bảng đã tham gia, nó sẽ phức tạp hơn một chút, nhưng vẫn có thể. Ví dụ:
var tables = mysql.join({tables: ['article', 'category'], on: 'categoryID'});
mysql.select(tables, {'article.id': 3}, ['article.title', 'article.body', 'category.categoryID'])
Mã sạch hơn, không có phân tích cú pháp chuỗi, không có vấn đề tiêm, sử dụng lại các yếu tố truy vấn dễ dàng hơn ... Tôi có thể thấy rất nhiều lợi thế.
Có một lý do cụ thể tại sao nó được chọn để chỉ cung cấp quyền truy cập vào các truy vấn thông qua SQL không?