Per quanto ne so, la maggior parte dei database relazionali non offre alcuna API a livello di driver per le query, tranne una funzione query
che accetta una stringa SQL come argomento.
Sto pensando a come sarebbe più facile se si potesse fare:
var result = mysql.select('article', {id: 3})
Per le tabelle unite, sarebbe leggermente più complesso, ma ancora possibile. Ad esempio:
var tables = mysql.join({tables: ['article', 'category'], on: 'categoryID'});
mysql.select(tables, {'article.id': 3}, ['article.title', 'article.body', 'category.categoryID'])
Codice di pulizia, nessun sovraccarico di parsing di stringhe, nessun problema di iniezione, riutilizzo più facile degli elementi di query ... Vedo molti vantaggi.
C'è una ragione specifica per cui è stato scelto di fornire accesso alle query solo tramite SQL?