Я получаю эту ошибку, когда пытаюсь передать команды SQL с кавычками. Подойдут и другие простые запросы, только те, у которых есть кавычки или символ процента, которые дают мне эту ошибку.
Я попытался передать его как output string stream
, но все равно получил ту же ошибку.
std::vector<Post *> sql::selectSpecificPosts(sqlite3 *db, int languageNum){
sqlite3_open("test.db", &db);
std::vector<Post *> posts;
char *errMsg;
std::string select;
if (languageNum == 1) {
select = "SELECT * FROM POST WHERE CONTENTTYPE = \'Kotlin\'";
}else if (languageNum == 2){
select = "SELECT * FROM POST WHERE CONTENTTYPE = \'Objective-C\'";
}else if (languageNum == 3){
select = "SELECT * FROM POST WHERE CONTENTTYPE = \'JavaScript\'";
}
sqlite3_exec(db, select.c_str(), post_callback, &posts, &errMsg);
sqlite3_close(db);
return posts;
}
Есть ли лучший способ передать SQL-запрос с кавычкой?