嵌入式数据库主要是Berkeley DB和SQLite,BDB功能很强可以应用于工业,但不是关系数据库,SQLite免费小巧且速度快。
1、下载源代码并编译安装
在http://www.sqlite.org/download.html下载sqlite-autoconf-3080100.tar.gz,解压缩后./configure ; make ; make install,则生成了sqlite3程序和500多k的libsqlite3.so.0.8.6库文件
其中源代码包括sqlite3.c和sqlite3.h,sqlite3.h在程序中需要用到
2、程序部署
将库文件libsqlite3.so.0.8.6拷贝到部署机即可
3、测试程序
#include <stdio.h>
#include <sqlite3.h>
static int callback(void *NotUsed, int argc, char **argv, char **azColName){
int i;
for(i=0; i<argc; i++){
printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
}
printf("\n");
return 0;
}
int main(int argc, char **argv){
sqlite3 *db;
int rc;
char *zErrMsg = 0;
//1.create or open database file
rc = sqlite3_open("my.db", &db);
if( rc ){
fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
sqlite3_close(db);
exit(1);
}
//2.create table
rc = sqlite3_exec(db, "create table phonenumber(id int,name varchar(30));", NULL, 0, &zErrMsg);
if( rc!=SQLITE_OK ){
fprintf(stderr, "SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}
//3.insert data
rc = sqlite3_exec(db, "insert into phonenumber values(1,'abc')", NULL, 0, &zErrMsg);
if( rc!=SQLITE_OK ){
fprintf(stderr, "SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}
//4.select and show data
sqlite3_exec(db, "select * from phonenumber", callback, 0, &zErrMsg);
if( rc!=SQLITE_OK ){
fprintf(stderr, "SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}
sqlite3_close(db);
return 0;
}
分享到:
相关推荐
QString content = "Hello, World!"; QFile file("/path/to/your/file.txt"); if (file.open(QIODevice::WriteOnly | QIODevice::Text)) { QTextStream out(&file); out ; file.close(); } ``` 在"qtSqlite"这个...
defaults.set("Hello, World!", forKey: "greeting") // 读取数据 if let greeting = defaults.string(forKey: "greeting") { print(greeting) } ``` 接下来,我们讨论文件存储。iOS支持多种文件格式,如文本文件...
了解了"Hello World"后,开发者可以逐渐深入学习Android的四大组件(Activity、Service、BroadcastReceiver和ContentProvider),理解Intent的概念,以及如何进行数据持久化(如SQLite数据库和SharedPreferences)。...
4. **数据存储**:掌握在Android中保存数据的不同方法,如Shared Preferences、SQLite数据库和文件系统。 5. **网络编程**:学习如何进行HTTP请求,获取网络数据。 6. **异步编程**:理解Android中的AsyncTask或使用...
在Windows 8应用中,我们可以使用多种方法来存储数据,包括本地存储、SQLite数据库、XML文件或Windows Runtime提供的数据存储API。例如,可以使用IsolatedStorage API来保存简单的文本或二进制数据,或者使用...
在描述中提到的“SqliteConsoleDemoK”可能是一个包含SQLite数据库操作示例的应用。SQLite是一种轻量级的、自包含的数据库引擎,常用于移动应用和嵌入式系统中存储数据。在MAUI应用中集成SQLite,开发者可以实现本地...
Vapor 还支持数据库集成,例如 SQLite 或 PostgreSQL。通过配置 `Config` 文件,你可以轻松地将数据存储到数据库中。例如,添加 `.databases` 部分到 `Config/development.json` 文件,并设置连接信息。然后,可以...
6. **SQLite数据库**:本地数据存储解决方案。 7. **AsyncTask**和**Coroutines**:处理异步任务,避免阻塞主线程。 8. **RecyclerView**:用于展示大量可滚动数据的视图组件。 9. **RESTful API**和**JSON解析**:...
SQLite3是一款开源的关系型数据库管理系统,它以单个磁盘文件的形式存储整个数据库,并支持大多数SQL标准特性。由于其轻量级、跨平台以及无需服务器进程等特点,SQLite3被广泛应用于桌面和移动设备上的应用程序。 #...
writer.write("Hello, World!"); } catch (IOException e) { e.printStackTrace(); } ``` #### 读文件 ```java // 读取文件内容 try (BufferedReader reader = new BufferedReader(new FileReader(outputFile))) ...
3. **SQLite数据源**:项目中包含了SQLite数据库文件,这是一种轻量级的关系型数据库,无需单独的服务器进程,可以直接在应用程序中使用。这使得它成为开发测试和快速原型的理想选择。 4. **MyBatis配置**:在...
SQLite 是一个轻量级的、开源的嵌入式数据库引擎,广泛应用于移动设备、桌面系统以及服务器中的数据存储。在本教程中,我们将探讨如何使用 SQLite 来实现数据的增加和查找功能,这对于任何需要持久化数据的应用程序...
fos.write("Hello, World!".getBytes()); fos.close(); ``` 3. **流式操作**:可以使用`BufferedReader`和`BufferedWriter`进行高效读写,或者使用`FileReader`和`FileWriter`进行简单操作。 二、SQLite数据库 ...
不过,基于题目要求,我们可以围绕“Windows CE(简称Wince)系统”如何连接数据库特别是SQLite数据库这一主题进行深入探讨。 ### Windows CE 系统概述 Windows CE 是微软推出的一款针对嵌入式设备的操作系统。它...
在后续的学习中,学生将进一步探索Android的四大组件(Activity、Service、BroadcastReceiver和ContentProvider),掌握Intent机制,理解多线程处理,以及如何利用SQLite数据库和网络API等。这些知识将帮助他们构建...
在本文中,我们将深入探讨如何使用Echo框架和SQLite数据库构建一个简单的Web API。"hello-echo-world"项目展示了如何将这两个强大的工具结合在一起,为Web应用程序提供数据存储和交互的能力。 **Echo框架** Echo是...
还学习了Qt中多线程的使用,以及SQLite、MySql数据库在Qt中的应用,还有XML的简单使用…感觉学的不多,说起来似乎又说不完,但完全消化记在脑子里的是少之又少(接口过多,重要的还是要熟悉基本的事件处理、信号与槽...
在"ORMLite HelloWorld"项目中,你可能能看到如何创建一个简单的实体类,设置数据库配置,以及如何插入、查询、更新和删除数据的基本步骤。这个项目是学习ORMLite的绝佳起点,帮助开发者快速上手并理解其核心功能。...
在完成这个"Hello World"应用后,开发者通常会进一步学习Android SDK提供的各种API,如意图(Intent)系统,用于组件间的通信,或者是SQLite数据库,用于持久化数据。此外,还会探索更复杂的UI设计,网络请求,以及...
在Android开发领域,"Hello, World!"程序是一个经典的起点,它...在实际开发过程中,开发者还会接触到更多的Android特性和最佳实践,如Intent用于组件间通信,SQLite数据库管理本地数据,以及各种服务和权限管理等等。