【C++拓展】vs2022使用SQlite3
前言
SQLite3 是一种广泛应用的嵌入式数据库,以其轻量、高效和无服务器架构闻名。Visual Studio 2022(VS2022)作为一款强大的 IDE,提供了丰富的工具支持 C++ 开发。在 VS2022 中使用 SQLite3,可以帮助开发者快速集成数据库功能,并实现高效的数据管理。本文将介绍如何在 VS2022 中使用 SQLite3 的关键步骤和注意事项,为开发者提供入门指引。
下载所需要的文件
SQLite
首先需要下载源文件:
然后下载动态库:
然后把他们放到一起,如上
生成lib库
按win
输入dev
打开vs的命令行
cd
进入刚刚的文件夹
输入:lib /MACHINE:X64 /DEF:sqlite3.def
最后生成lib
库
vs2022中使用SQlite
打开项目属性,VC++目录,把你刚刚的路径填进去:
然后打开输入,把sqlite3.lib
填进去
示例代码
#include <iostream>
#include <sqlite3.h> // SQLite3 的头文件
// 打开数据库的回调函数
static int callback(void* NotUsed, int argc, char** argv, char** azColName) {
for (int i = 0; i < argc; i++) {
std::cout << azColName[i] << ": " << (argv[i] ? argv[i] : "NULL") << std::endl;
}
std::cout << std::endl;
return 0;
}
int main() {
sqlite3* db; // 数据库连接指针
char* errMsg = nullptr;
int rc;
// 打开或创建数据库
rc = sqlite3_open("example.db", &db);
if (rc) {
std::cerr << "无法打开数据库: " << sqlite3_errmsg(db) << std::endl;
return rc;
}
else {
std::cout << "成功打开数据库!" << std::endl;
}
// 创建表
const char* createTableSQL =
"CREATE TABLE IF NOT EXISTS Users("
"ID INTEGER PRIMARY KEY AUTOINCREMENT, "
"Name TEXT NOT NULL, "
"Age INTEGER NOT NULL);";
rc = sqlite3_exec(db, createTableSQL, nullptr, nullptr, &errMsg);
if (rc != SQLITE_OK) {
std::cerr << "创建表失败: " << errMsg << std::endl;
sqlite3_free(errMsg);
}
else {
std::cout << "表创建成功!" << std::endl;
}
// 插入数据
const char* insertSQL =
"INSERT INTO Users (Name, Age) VALUES ('Alice', 25), ('Bob', 30);";
rc = sqlite3_exec(db, insertSQL, nullptr, nullptr, &errMsg);
if (rc != SQLITE_OK) {
std::cerr << "插入数据失败: " << errMsg << std::endl;
sqlite3_free(errMsg);
}
else {
std::cout << "数据插入成功!" << std::endl;
}
// 查询数据
const char* querySQL = "SELECT * FROM Users;";
rc = sqlite3_exec(db, querySQL, callback, nullptr, &errMsg);
if (rc != SQLITE_OK) {
std::cerr << "查询数据失败: " << errMsg << std::endl;
sqlite3_free(errMsg);
}
else {
std::cout << "数据查询成功!" << std::endl;
}
// 关闭数据库
sqlite3_close(db);
std::cout << "数据库已关闭。" << std::endl;
return 0;
}
如果提示确实dll,则需要:
总结
在 VS2022 中使用 SQLite3 是实现轻量级数据库存储的高效解决方案。通过配置 SQLite3 库、连接数据库和编写 SQL 操作代码,可以快速搭建起基于 SQLite3 的数据管理功能。对于嵌入式系统、桌面应用和小型项目,SQLite3 是一个理想的选择。然而,在使用过程中,需要注意事务处理和多线程访问等细节,以确保数据一致性和安全性。通过掌握这些知识,开发者能够更好地利用 SQLite3 和 VS2022 构建高质量的应用程序。
原文地址:https://blog.csdn.net/m0_62599305/article/details/145321603
免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!