将UISeachBar与SQLite3一起使用

时间:2009-12-11 23:10:50

标签: iphone sqlite uisearchbar

我对iphone开发很新。

无论如何,我现在已经搜索了1.5小时,以找到一个可能性/教程或者无论如何添加UISearchBar(它已经添加到RootViewController.XIB中)。 有很多Tutos描述了如何将Array连接到UISearchBar。 我想要做的是将我已经工作的SQLite数据库连接到UISearchBar,这样我就可以进行FullTextSearch。

喜欢..假设我的UITableView中有100个条目来自SQLite数据库,当我输入“abc”字符串时,只显示包括abc在内的相关条目。

有什么想法吗?

非常感谢您提前!

1 个答案:

答案 0 :(得分:5)

您的UISearchBarDelegate类可以建立与数据库的连接,并在以下某处运行查询:

NSString *sql = @"SELECT author FROM books WHERE title like ?||'%'";
sqlite3_stmt *stmt;

if (sqlite3_prepare_v2(database,
   [sql cStringUsingEncoding:NSUTF8StringEncoding],
   -1, &stmt, NULL) == SQLITE_OK) {

   NSString *title = @"programming";
   sqlite3_bind_text(stmt, 1, [title UTF8String], -1, SQLITE_TRANSIENT);


   while (sqlite3_step(stmt) == SQLITE_ROW) {
      NSString *author = sqlite3_column_string(stmt, 0);
      NSLog(@"Add to presented authors: %@", author);
   }

}

在查询之前,您需要建立与数据库的连接。

有一个很好的教程here