Windows 下SQLite3的安装与使用

来源:互联网 发布:sqlserver 查询合计 编辑:程序博客网 时间:2024/05/16 01:05


SQLite是一款轻量级的本地数据库,支持Windows/Linux/Unix等等主流的操作系统,同时支持很多程序语言,比如 C++、C#、PHP、Java等

本篇主要讲述如何在Windows下编译和使用SQLite数据库。

一、下载

http://www.sqlite.org/download.html,下载

sqlite-amalgamation-3190000.zip

sqlite-dll-win64-x64-3190000.zip(我下载的是64位。)

二、编译过程

1、打开VC新建一个 Win32 DLL 空工程,命名为 sqlite3

2、解压sqlite-amalgamation-X.zip,把sqlite3.h、sqlite3ext.h、sqlite3.c添加到工程项目中

3、修改配置,在项目属性,常规下的配置类型,将动态库(.dll)改成静态库(.lib)

4、编译,然后在编译目录中找到sqlite3.lib

当然也可以通过dll-win64-x64中的sqlite3.dll获得sqlite3.lib 方法如下:

下面就说说如何将sqlite3.def转化为sqlite3.lib,这个法子同样适用于将其他def文件转化为lib文件,具体步骤如下:

打开VS中的命令管理器,输入指令

C:\ProgramFiles\Microsoft Visual Studio\VC98\Bin>LIB.EXE /MACHINE:X86 /DEF:sqlite3.def

Microsoft (R)Library Manager Version 6.00.8168

Copyright (C)Microsoft Corp 1992-1998. All rights reserved.

 

   Creating library sqlite3.lib and objectsqlite3.exp

得到的lib文件也在C:\ProgramFiles\Microsoft Visual Studio\VC98\Bin目录下。

下面就直接看C/C++操作sqlite数据库的示例程序,代码如下:

#include<stdio.h>

#include <sqlite3.h>

 

void main()

{

    sqlite3 *db = NULL;

    char *zErrMsg = NULL;

    int rc;

 

    rc = sqlite3_open("test.db",&db); //打开数据库

 

    //如果连接成功,则返回SQLITE_OK,其值为0;如果失败则返回大于0的值

    if( rc )

    {

         fprintf(stderr, "Can't opendatabase: %s\n", sqlite3_errmsg(db));

         sqlite3_close(db);        //注意,这里也需要调用sqlite3_close

         return;

    }

    rc = sqlite3_exec(db, "create tabletbl1(one varchar(10), two smallint)", NULL, 0, &zErrMsg);

    if( rc != SQLITE_OK )

    {

         fprintf(stderr, "SQL error:%s\n", zErrMsg);

         sqlite3_free(zErrMsg);  //注意这里对 zErrMsg 的释放

    }

    sqlite3_close(db); //关闭数据库

}

sqlite数据库的使用非常的简单,通过sqlite3_open打开数据库,打开成功后通过sqlite3_exec执行sql语句,最后使用sqlite3_close关闭数据库。