Currently, when an error occurs, an Error object is thrown with the error message. When debugging errors in SQL, it is very useful to know where in the SQL the error occurred. Therefore, a custom error object should be thrown with error offset information included.
Proposed implementation
sqlite3_error_offset should be called after sqlite3_errmsg to obtain the offset within the SQL that caused the error. It will be -1 if the problem does not relate to the SQL syntax itself. This should be returned in JavaScript via a custom Error class that includes the message as standard, and the offset as additional information.
Summary
Currently, when an error occurs, an Error object is thrown with the error message. When debugging errors in SQL, it is very useful to know where in the SQL the error occurred. Therefore, a custom error object should be thrown with error offset information included.
Proposed implementation
sqlite3_error_offset
should be called aftersqlite3_errmsg
to obtain the offset within the SQL that caused the error. It will be -1 if the problem does not relate to the SQL syntax itself. This should be returned in JavaScript via a custom Error class that includes the message as standard, and the offset as additional information.