c++中sqlite3的用法是什么

avatar
作者
筋斗云
阅读量:0

在C++中使用SQLite3数据库时,需要包含SQLite3的头文件,并使用SQLite3的API进行数据库操作。以下是一个简单的示例代码,演示如何使用SQLite3在C++中创建数据库、创建表、插入数据、查询数据等操作:

#include  #include   int main() {     sqlite3* db;     char* errorMessage;      // 打开数据库     int rc = sqlite3_open("test.db", &db);     if (rc) {         std::cerr << "Can't open database: " << sqlite3_errmsg(db) << std::endl;         return 1;     } else {         std::cout << "Opened database successfully" << std::endl;     }      // 创建表     const char* sql = "CREATE TABLE COMPANY("                       "ID INT PRIMARY KEY     NOT NULL,"                       "NAME           TEXT    NOT NULL,"                       "AGE            INT     NOT NULL,"                       "ADDRESS        CHAR(50),"                       "SALARY         REAL );";      rc = sqlite3_exec(db, sql, NULL, 0, &errorMessage);     if (rc != SQLITE_OK) {         std::cerr << "SQL error: " << errorMessage << std::endl;         sqlite3_free(errorMessage);     } else {         std::cout << "Table created successfully" << std::endl;     }      // 插入数据     sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) "           "VALUES (1, 'Paul', 32, 'California', 20000.00);";      rc = sqlite3_exec(db, sql, NULL, 0, &errorMessage);     if (rc != SQLITE_OK) {         std::cerr << "SQL error: " << errorMessage << std::endl;         sqlite3_free(errorMessage);     } else {         std::cout << "Record inserted successfully" << std::endl;     }      // 查询数据     sql = "SELECT * FROM COMPANY;";      rc = sqlite3_exec(db, sql, callback, 0, &errorMessage);     if (rc != SQLITE_OK) {         std::cerr << "SQL error: " << errorMessage << std::endl;         sqlite3_free(errorMessage);     }      // 关闭数据库     sqlite3_close(db);      return 0; } 

在上面的示例中,我们首先使用sqlite3_open函数打开一个名为test.db的数据库,然后使用sqlite3_exec函数执行SQL语句来创建表、插入数据和查询数据。需要注意的是,sqlite3_exec函数的第三个参数是一个回调函数,用来处理查询结果。在实际使用中,需要根据具体需求来调整和完善代码。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!