加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

SQLite在VC下的使用

发布时间:2020-12-13 00:07:07 所属栏目:百科 来源:网络整理
导读:SQLite在VC下的使用 2009-12-12 18:36 362人阅读 评论(1) 收藏 举报 (转自 http://hi.baidu.com/yeetoo/blog/item/2fde8813346efe836538db87.html )在VC中使用SQLite的例子 2007年09月26日 星期三 14:06 我打算在PonySE上把SQLite做为第一个保存"转换数据"

SQLite在VC下的使用

362人阅读 评论(1) 收藏 举报 (转自 http://hi.baidu.com/yeetoo/blog/item/2fde8813346efe836538db87.html )在VC中使用SQLite的例子 2007年09月26日 星期三 14:06 我打算在PonySE上把SQLite做为第一个保存"转换数据"的数据库,所以今天小试了一把SQLite,觉得它使用起来很简洁.

环境: VS2005 VC8.0
一. 准备工作:
(1)在SQLite的官方网站下载Windows平台下的3.5.0版本的SQLite,下载地址:
http://www.sqlite.org/sqlitedll-3_5_0.zip
压缩文件中包含了sqlite3.dll和sqlite3.def文件. 用LIB命令生成用于连接(LINK)使用的lib文件:
LIB /DEF:sqlite3.def /machine:IX86
这样就生成了:
sqlite3.lib 和 sqlite3.exp 两个文件
sqlite3.lib文件是我们连接程序所使用的.
(2)在SQLite官方网站下载SQLite3的源程序,下载地址:
http://www.sqlite.org/sqlite-source-3_5_0.zip
解压出sqlite3.h文件
(3)将(1)和(2)中得到的文件放在sqlite3_lib目录(需要新建)中,此时sqlite3_lib目录下应该有:
sqlite3.h
sqlite3.dll
sqlite3.lib
sqlite3.def
等文件.

二. 编写例子程序:
(1)打开VS2005创建一个新的项目:
项目类型: Visual C++
模板: Win32控制台应用程序
将"准备工作"中建立的sqlite3_lib目录复制到你的项目所在的目录下,然后在VS2005的IDE中对此项目进行如下的设置:
选择菜单: "项目" -> "(项目名称) 属性...",在弹出的对话框中选择"配置属性"->"链接器"->"输入",在"附加依赖项"中输入./sqlite3_lib/sqlite3.lib;
然后继续在对话框中选择"配置属性"->"C/C++"->"预编译头",在"创建/使用预编译头"中选择"不使用预编译头";
然后"确定".

(2)编写代码
#include <stdio.h>
#include <stdlib.h>

#include "./sqlite3_lib/sqlite3.h"

static int _callback_exec(void * notused,int argc,char ** argv,char ** aszColName)
{
int i;
for ( i=0; i<argc; i++ )
{
printf( "%s = %s/n",aszColName[i],argv[i] == 0 ? "NUL" : argv[i] );
}

return 0;
}

int main(int argc,char * argv[])
{
const char * sSQL = "select * from t1;";
char * pErrMsg = 0;
int ret = 0;
sqlite3 * db = 0;

ret = sqlite3_open("./prog.db",&db);

if ( ret != SQLITE_OK )
{
fprintf(stderr,"Could not open database: %s",sqlite3_errmsg(db));
exit(1);
}

printf("Successfully connected to database/n");

sqlite3_exec( db,sSQL,_callback_exec,&pErrMsg );
if ( ret != SQLITE_OK )
{
fprintf(stderr,"SQL error: %s/n",pErrMsg);
sqlite3_free(pErrMsg);
}

sqlite3_close(db);
db = 0;

return 0;
}

三. 编译运行.
完全的项目我已经放到网站上了,大家可以 下载 :
http://www.ponyse.com/downloads/SQLiteDemo.rar

注:
SQLite是一个小型的C程序库,实现了独立的,可嵌入的,零配置的SQL数据库引擎。
官方网址: http://www.sqlite.org/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读