У меня есть следующая функция, которая должна защищать оператор для SQL-инъекций
function tablePresent (table) {
//option 1
const statement = db.prepare('SELECT * FROM (?)', table)
// option 2
//db.run('SELECT * FROM $table', {$table: table})...
return new Promise((resolve, reject) => {
db.run(statement, err => {
if (err) {
console.log(err)
reject()
return
}
resolve()
})
})
}
Следуя документу, некоторые учебные пособия как option 1
, так и option 2
не работают и возвращают эту ошибку:
Error: SQLITE_ERROR: near "?": syntax error
Есть идеи?