SQLite数据库提供了丰富的C语言API接口函数,使得对数据库的操作十分方便。本系统只需要以下3个核心函数就可以实现连接数据库、处理查询等操作:
int sqlite3_open(const char*db,int mode,char* *errmsg);
int sqlite3_close(sqlite*db);
int sqlite3_exec(sqlite*db,char*sql,int(*callback) (void*,
int,char**,char**),void*parg,char**errmsg);
其中,前2个函数用于打开与关闭数据库,第3个函数sqlite3_exec()用来处理SQL查询,此函数的第2个参数用来处理一条或多条SQL语句,如果是查询(SELECT)语句,则查询结果的每一条记录都必须调用第3个参数的Callback函数,第4个参数则为Callback函数的第一个参数指针;如果不是查询语句,则第3、4个参数为NULL。所有SQL执行完毕后返回0,否则返回错误代码,可通过第5个参数值来查看详细错误信息。
使用sqlite3_mprintf函数将数据段的值添加到SQL语句中,然后通过sqlite3_exec函数执行该SQL语句把标签数据插入到数据库中。
3.3 数据的访问操作
GoAhead WebServer是一款面向嵌入式系统的Web服务器,作为系统中数据转发和模块承载平台。向Wince系统中移植比较简单,在Visual C++ 6.0打开CE子目录下的工作空间webs.dsw,将生成的webs.exe和所需的Web页面导入WinCE系统中相应位置即可。需要注意的是:要设置计算机系统环境变量Path,使其包含include和lib,确保包含CE、UEMF、webs和UNICODE的特征值被定义在内。
在使用GoAhead WebServer前,需要对GoAhead WebServer进行配置:
(1)在浏览器输入地址时,服务器返回某一页面,该页面通过在main.c文件中的initWebs函数进行设定,设定语句为:
websRedirec(wp,T(“index.htm”));
(2)当浏览器访问某一地址下的目录时,服务器将返回该目录下的缺省页面,通过main.c文件中的websHomePageHandler函数进行设定,设定语句为: