我需要在我的数据库中进行SELECT,并且我不知道如何正确绑定占位符。我知道它应该是这样的:
int main(void) {
char lastName[50];
char *err_msg = 0;
sqlite3_stmt * pStmt;
int rc = 0;
rc = dbconnect();
if (rc == 1)
{
printf("Please enter your family name: \t\t");
scanf("%s", lastName);
char *sql = "SELECT FirstName FROM Player WHERE LastName = ?";
rc = sqlite3_prepare_v2(db, lastName, 4, &pStmt, NULL);
rc = sqlite3_bind_text(pStmt, 1, "Miller", 3, NULL);
}
rc = dbexecute(sql, callback_firstCol);
return 0;
}
还有一些连接和执行的代码,我不知道你是否需要查看所有代码。
问题是取代"?"使用变量lastName,我无法做到这一点 我用Google搜索了几天,发现我需要一个" sqlite3_prepare_v2"和" sqlite3_bind_text"但我不理解我必须传递的所有论据(你看我试着在代码中)。我还读到了" sqlite_exec"需要用" sqlite3_step"。
替换也许你不能详细地帮助我,但也许你有一个很好的文档记录,我找到的并不适合我。谢谢。