Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone iOS-当我试图获取一个包含多个表的sqlite数据库时,我什么也得不到?_Iphone_Sqlite - Fatal编程技术网

Iphone iOS-当我试图获取一个包含多个表的sqlite数据库时,我什么也得不到?

Iphone iOS-当我试图获取一个包含多个表的sqlite数据库时,我什么也得不到?,iphone,sqlite,Iphone,Sqlite,当我试图获取一个包含多个表的数据库时,我根本没有得到任何数据。在正常情况下,当我尝试使用一个表获取数据库时,我可以获取所有数据,并且一切正常 此函数应返回数据库中的表数: -(NSInteger)GetTablesCount { [self openconnection]; const char * sql="select count(*) from sqlite_master where type='table'"; sqlite3_stmt *selectstatm

当我试图获取一个包含多个表的数据库时,我根本没有得到任何数据。在正常情况下,当我尝试使用一个表获取数据库时,我可以获取所有数据,并且一切正常

此函数应返回数据库中的表数:

 -(NSInteger)GetTablesCount
{   
     [self openconnection];
  const char * sql="select count(*) from sqlite_master where type='table'";
  sqlite3_stmt *selectstatment;

  if(sqlite3_prepare_v2(database,sql,-1,&selectstatment,Nil)==SQLITE_OK)
  {     
      while(sqlite3_step(selectstatment)==SQLITE_ROW){


        return sqlite3_column_int(selectstatment, 0);// return the number of tables
      // int the case of multiple tables it returns 0...
      }
}
return 0;
   }

[自开连接]
打开与数据库的连接。

我没有发现您的代码有任何错误。只是猜测一下,上一条语句中的“0返回”不是sqlite3\u prepare\u v2!=SQLITE_OKi意味着您的sqlite3_prepare_v2可能失败了。如果是这样的话,你应该用多个表来研究你的数据库创建过程。我尝试了另一个数据库,它工作得很好,可能是数据库本身的创建,,,thnx很多:)