Looks like sqlite is quoting a (') sign twice.
Code Snippet (if applicable) to Reproduce Problem:
var/database/database = new("test.db")
proc/query_db(var/database/query/query,var/database/database)
query.Execute(database)
if(query.Error())
return 0
return query.RowsAffected()>0 ? query.RowsAffected() : 1
mob
verb/test_bad()
var/database/query/query = new()
query.Add("INSERT INTO test (a) VALUES (?);","'")
world << "[query]"
if(!query_db(query,database))
world << "Error #[query.Error()] - [query.ErrorMsg()]"
verb/test_good()
var/database/query/query = new()
query.Add("INSERT INTO test (a) VALUES ('''');")
world << "[query]"
if(!query_db(query,database))
world << "Error #[query.Error()] - [query.ErrorMsg()]"
Expected Results:
No table found (test_good())
INSERT INTO test (a) VALUES ('''');
Error #1 - no such table: test
Actual Results:
Unrecognized token (test_bad())
INSERT INTO test (a) VALUES (''''');
Error #1 - unrecognized token: "''''');"