2012-01-11 32 views
1

我在从sqlite数据库中检索希腊字母时遇到问题。这些字母在我的sqlite数据库中,我可以从我的用户那里得到这些字母。这里是我的代码:从sqlite数据库中检索希腊字符

NSString *selectedChapter = [SecondViewController chapterToSearch]; 

(几行后)

const char *sqlStatement=[[NSString stringWithFormat:@"SELECT * FROM samples WHERE chapter IN ('%@')",selectedChapter]UTF8String]; 

     if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) { 
      if (sqlite3_prepare_v2(database, sqlStatement, -1, &selectStatement, NULL) != SQLITE_OK) { 
       NSAssert1(0, @"Error: failed to prepare statement with message '%s'.", sqlite3_errmsg(database)); 
      } 
      while (sqlite3_step(selectStatement) == SQLITE_ROW) { 

       NSString *chapterLetter = [NSString stringWithUTF8String:(char *)sqlite3_column_text(selectStatement,0)]; 
} 

它跳过了 '而' 语句。任何帮助真的会被赞赏。

回答

0

不应该是while (sqlite3_step(sqlStatement) == SQLITE_ROW) {

+0

我不明白你在说什么。计算机读取“while”语句,但不会拾取{}之间的行。 – 2012-01-11 18:03:44

+0

你正在用select语句代替sqlStatement – Louis 2012-01-13 09:04:00

+0

谢谢,但这不是问题。当我在sqlStatement中放入“非希腊字母”语句时,它读取sqlite数据库就好了。不管怎么说,还是要谢谢你。 – 2012-01-13 21:52:15