2016-08-20 159 views
0

为什么这个声明rc= sqlite3_open("file.db",&db)其中rc是整数变量总是返回零???。这是代码SQlite3和数据库创建

#include <stdio.h> 
    #include <sqlite3.h> 

    int main(int argc, char* argv[]) 
    { 
     sqlite3 *db; 
     char *zErrMsg = 0; 
     int rc; 

     rc = sqlite3_open("test.db", &db); 

     if(rc){ 
     fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db)); 
     return(0); 
    } 
     else 
     { 
     fprintf(stderr, "Opened database successfully\n"); 
    } 
     sqlite3_close(db); 
    } 

是不是应该返回1(真)在成功的数据库创建的情况下?

+1

0表示确定:https://www.sqlite.org/rescode.html#ok – Eric

回答

0

返回值不是布尔值;你永远不必比较01

documentation说:

如果数据库被打开(和/或创建)成功,则返回SQLITE_OK。否则,返回error code

相关问题