2012-03-13 61 views
0
sqlite3_stmt *statement; 
selectSql = "SELECT title FROM list"; 
sqlite3_prepare_v2(database, selectSql, -1, &statement, NULL); 
countColumn = sqlite3_column_count(statement); 

NSLog(@"%d",countColumn); 

为什么会发生这种计数始终返回1
事实上,表中有18条记录sqlite3_column_count始终返回1

+0

NSLog(@“%d”,countColumn); ? – janusbalatbat 2012-03-13 10:15:17

+0

@sunajledif NSLog(@“what ?!”); – Jake 2012-03-13 10:17:44

+0

@notreallyJake NSLog(@“%d”,countColumn); ? ,他NSLogging的信息columnCount,就在我的第一个评论是个问号,我想你没有注意到它:) – janusbalatbat 2012-03-13 10:23:49

回答

1

这是一个因为你的语句只select小号一个列(title)。试试这个,看看它返回什么:

sqlite3_stmt *statement; 
selectSql = "SELECT * FROM list"; 
sqlite3_prepare_v2(database, selectSql, -1, &statement, NULL); 
countColumn = sqlite3_column_count(statement); 

NSLog(@"%d",countColumn); 
+0

是的,我错了! – leoliu 2012-03-13 10:18:01

0

你的意思行,不列,算不算? 列数(在你的情况标题)确实总是1.

+1

我的意思是行!谢谢 – leoliu 2012-03-13 10:19:25