请找到代码。我找不到任何错误。但“Type1”提供给?在SQL中没有通过SQLITE3_BIND_TEXT绑定。
我需要你的帮助,因为我是sqlite的amatuer程序员。
char * sql = "SELECT tube_id FROM tubes where type=?";
sqlite3_stmt * stmt;
sqlite3_prepare_v2 (db, sql, strlen (sql) + 1, & stmt, NULL);
int rc=sqlite3_bind_text(stmt,1, /* The number of the argument. */ "Type1",-1,SQLITE_STATIC/* The callback. */);
TRACE(_T("sql: %d %S\n "),rc, sql);
int s = sqlite3_step (stmt);
TRACE(_T("prepared query: %S\n"), sqlite3_sql(stmt));
if (s == SQLITE_DONE) {
int bytes;
const unsigned char * text;
bytes = sqlite3_column_bytes(stmt, 0);
text = sqlite3_column_text (stmt, 0);
TRACE(_T("text: %S\n"), text);
TRACE(_T("stmt: %S\n"), bytes);
} else {
fprintf (stderr, "Failed.\n");
}
sqlite3_reset(stmt);
sqlite3_clear_bindings(stmt);
答案 0 :(得分:0)
@ColonelThirtyTwo告诉的是正确的。我用过SQLITE_ROW来解决这个问题。 问候, Selva的