Так что в основном у меня есть похожий блок, написанный на Express:
var sqlite3 = require('sqlite3');
const data = {};
const db = new sqlite3.Database("sqlite/test.db");
db.run("INSERT INTO [Employees]([Name]) VALUES(?)", [name], function (err) {
if (err) { //this is the error block
data.error = err.code;
data.status = 0;
}
else { //this is the success block
data.data = { Name: name, Id: this.lastID };
data.status = 1;
}
db.close();
res.send(data);
});
Это делает то, на что это похоже, просто простое выражение вставки и его обратный вызов.Операции обновления, выбора и удаления буквально одинаковы.
Но всякий раз, когда я получаю ошибки (синтаксическая ошибка, пропущенные поля, пропущенные таблицы, yada yada), я всегда просто получаю {errNo: 0, code: "SQLITE_ERROR"}
в своем err
аргумент, который раздражающе неспецифичен и бесполезен.
Есть ли способ исправить ошибку и сделать ее не вызывающей безумия?