使用C中的占位符进行SELECT

时间:2018-06-03 12:07:40

标签: c select sqlite

这是我在这里提出的第一个问题,因为我现在已经有几天这个问题; 我对编码很陌生,所以我不了解sqlite3等代码库的某些部分。

我需要在我的数据库中进行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"。

替换

也许你不能详细地帮助我,但也许你有一个很好的文档记录,我找到的并不适合我。谢谢。

0 个答案:

没有答案