這裏的第一個(很多?)帖子。用於iphone的xcode中的LIKE語句的sqlite
我有一個問題與我的聲明。
sqlite3_stmt *statement;
const char *query = "select * from words where ordet LIKE ?001";
NSString *wildcard = [NSString stringWithFormat:@"%@%%", fullWordForSQL.text];
sqlite3_bind_text(statement, 1, [wildcard UTF8String], -1, SQLITE_STATIC);
if (sqlite3_prepare_v2(dbHandle, query, -1, &statement, NULL) == SQLITE_OK){
NSLog(@"in if");
NSLog(@"Data: %s", query);
我已經成功地與查詢檢索的數據:
const char *query = "select * from words where ordet LIKE "_test__";
但是,當我嘗試將動態地創建字綁定它不沾。 我的nslog在「ordet LIKE?001」中打印出「Data:select * from words」,所以不知何故我沒有得到綁定的工作。 我知道沿着上面的代碼的方式會有其他問題,但現在我堅持在這個問題
我不知道你的意思。我的英語可能會生鏽。我知道從PHP的SQL,但這對我來說是新的。我在做... – Martin 2011-04-04 18:11:14
調用'sqlite3_bind_text()'不會修改'query'。它創建一個新的語句對象。你的'NSLog()'輸出'query',它總是原文。如果你想查看綁定的結果,你應該看看'sqlite3_trace()',它會在處理它之前發送給你這個字符串。 – 2011-04-04 18:14:09
啊,當然...我會看看跟蹤() – Martin 2011-04-04 18:18:17