Sqlite   发布时间:2022-05-22  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了SQLite在VC下的使用大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
sqlite在VC下的使用(转)http://www.sqlite.com.cn/MysqLite/4/523.HTML
一、sqlite简介
sqlite 是用C语言编写的开源数据库,主要用于嵌入式,你也可以把它集成在自己的桌面程序中,也有人将其替代Access,用作后台数据库。
sqlite 支持多数sql92标准,例如:索引、限制、触发和查看支持。
支持 NulL、INTEGER、REAL、TEXT 和 BLOB 数据类型,支持事务。
二、下载sqlite
sqlite可以到官方站点下载
http://www.sqlite.org/download.HTML
包括:linux,Mac OS X,windows下的已编译文件以及源代码、帮助文档。
VC中使用sqlite
sqlite官方下载只提供给我们一个sqlite3.dll跟一个sqlite3.def文件,并没有提供用于VC++6.0的lib文件,可以利用sqlite3.def文件生成,步骤如下:
1.将sqlite3.h(D:\sqlite-amalgamation-3_6_23.zip)拷贝到C:\Program files\Microsoft Visual Studio\VC98\Include目录下,这时编译可通过,但链接错误,因为没有liB文件()
2.启动一个命令行程序,进入VC的安装目录C:\Program files\Microsoft Visual Studio\VC98\Bin,在这个目录下面有一个liB.exe文件,使用它就能生成sqlite3.lib文件,将sqlite3.def文件放到相同目录,或者绝对路径也可以, 然后在命令行输入如下命令:
liB /MACHINE:IX86 /DEF:sqlite3.def
该命令生成两个文件:sqlite3.lib和sqlite3.exp
运行该命令时,如果提示找不到MSPDB60.DLL文件,可从其它目录拷贝至Bin目录下
3.将生成的sqlite3.lib拷贝到lib目录下,将sqlite3.dll拷贝到C:\WINNT\system32目录下
4.将sqlite3.lib加入到工程链接中,Project->Settings,link选项卡,Object/library modules最后添入sqlite3.lib
D:\sqlitedll-3_6_23里有.dll和.def文件
生成的lib在bin下
这时以下程序便可通过VC编译链接并运行:
#include <stdio.h>
#include <stdlib.h>
#include <sqlite3.h>
int column_names_printed = 0;
voID print_row(int n_values,char** values)
{
int i;
for (i = 0; i < n_values; ++i) {
printf("%10s",values[i]);
}
printf("\n");
}
int print_result(voID* data,int n_columns,char** column_values,char** column_names)
if (!column_names_printed) {
print_row(n_columns,column_names);
column_names_printed = 1;

return 0;
int main()
sqlite3 *db=NulL;
char *errMsg = NulL;
int rc;
rc = sqlite3_open("test.db",&db);
if( rc ){
fprintf(stderr,"Can't open database: %s\n",sqlite3_errmsg(db));
sqlite3_close(db);
exit(1);
else printf("open test.db successfully!\n");
rc = sqlite3_exec(db,"BEGIN TRANSACTION;",NulL,NulL);
sex varchar(6),age varchar(2));","INSERT INTO students VALUES('00001','Mary','female','15');\
INSERT INTO students VALUES('00002','John','male','16');\
INSERT INTO students VALUES('00003','Mike',sans-serif; Font-size:14px; line-height:25px; text-align:left"> INSERT INTO students VALUES('00004','Kevin','17');\
INSERT INTO students VALUES('00005','Alice','14');\
INSERT INTO students VALUES('00006','Susan',sans-serif; Font-size:14px; line-height:25px; text-align:left"> INSERT INTO students VALUES('00007','Christina',sans-serif; Font-size:14px; line-height:25px; text-align:left"> INSERT INTO students VALUES('00008','Brian',sans-serif; Font-size:14px; line-height:25px; text-align:left"> INSERT INTO students VALUES('00009','Dennis',sans-serif; Font-size:14px; line-height:25px; text-align:left"> INSERT INTO students VALUES('00010','daphne','18');",
NulL,&errMsg);
column_names_printed = 0;
printf("error code: %d\n",rc);
printf("error message: %s\n",errMsg);
另外,在vc下编译sqlite源代码,出现can not find tcl.h 可以 去掉tclsqlite.c或者在这个文件前面添加#define NO_TCL 去掉tcl的支持
三、sqlite的简单使用
3.1 建立数据库
C:\sqlite-3_6_11> sqlite3.exe dbname.db
sqlite3.exe后面跟数据库文件名,它是进入编译阶段的入口指令
3.2 创建数据表
sqlite> create table users(userID varchar(20) PRIMARY KEY,sans-serif; Font-size:14px; line-height:25px; text-align:left"> ...> age int,sans-serif; Font-size:14px; line-height:25px; text-align:left"> ...> birthday datetime);
3.3 添加记录
insert into users values('wang',20,'1989-5-4');
insert into users values('li',22,'1987-11-16');
3.4 查询记录
select * from users order by birthday;
3.5 删除记录
delete from users where userID='wang';
3.6 退出sqlite
sqlite> .exit
sqlite数据库的数据结构是存贮在 "sqlite_master" 表中
具体命令可以输入 .help查看或参考帮助文档
四、编译liB
需要到sqlite网站下载sqlitedll-3_6_11.zip,以VS 2008为例:
在DOS命令行下:
PATH = D:\Program files\Microsoft Visual Studio 9.0\VC\bin;%PATH%
PATH = D:\Program files\Microsoft Visual Studio 9.0\Common7\IDE;%PATH%
liB /DEF:sqlite3.def /machine:IX86

大佬总结

以上是大佬教程为你收集整理的SQLite在VC下的使用全部内容,希望文章能够帮你解决SQLite在VC下的使用所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: