介绍SQLite数据库
来源:互联网 发布:gtp软件下载 编辑:程序博客网 时间:2024/05/23 23:56
最近在做毕设的时候,想找一个文件型数据库,并且独立,不用安装一些东西就可以使用的,后来朋友推荐给我SQLite,用了一段时间,觉得很不错,很适合那些非典型数据库软件的设计,而且从今天起开始介绍SQLite数据库,先来介绍下SQLite数据库的优势吧。 一、SQLite数据库的优势: 1、零配置:无需安装和管理配置 2、灵活:储存在单一磁盘文件中的一个完整的数据库 3、存储量客观: 支持数据库大小至2TB 4、源代码足够小:大致3万行C代码 5、比Acess数据库要快,与MySQL的速度差不多 6、简单:SQLite的API使用起来很方便 7、良好注释的源代码、并且有着90%以上的测试覆盖率 8、独立:没有额外依赖 9、完全开源:你可以用于任何用途, 包括出售它 10、支持多种开发语言:C/C++、PHP、Perl、Java、ASP.NET、Python 二、配置环境: 首先我们需要下载SQLite的Windows版本,地址如下: windows版 sqlite-3_3_7.zip文件:这个是SQLite的可执行文件(包含sqlite3.exe文件) 这些文件里面并没有给我们提供LIB文件,我们需要自己编译出LIB文件。具体方法如下: 注:假设我的VC++6.0安装目录为C:/Program Files/Microsoft Visual Studio 第一步:将sqlite3.def文件拷到C:/Program Files/Microsoft Visual Studio/VC98/Bin/目录下。 第二步:在C:/Program Files/Microsoft Visual Studio/VC98/Bin/目录下有lib.exe的可执行文件,这个lib.exe文件是VC++6.0的一个工具,它用来添加、 修改,合并LIB文件。使用它我们就可以得到我们需要的SQLite3.lib文件了。打开命令行,输入如下命令。 C:/Program Files/Microsoft Visual Studio/VC98/Bin>LIB /MACHINE:IX86 /DEF:sqlite3.def 注:此时有可能会弹出一个警告说缺少MSPDB60.DLL文件,此时,我们到C:/Program Files/Microsoft Visual Studio目录下搜索MSPDB60.DLL这个文件,把这个文件复制到Bin文件夹中即可。 (未完待续) 现在在C:/Program Files/Microsoft Visual Studio/VC98/Bin/目录下出现了sqlite3.lib文件和sqlite3.exp文件,我们要用到sqlite3.lib文件,将sqlite3.exp文件删去即可。 第四步:我们打开VC++6.0,新建一个MFC对话框工程,名字叫SQLiteSample。在工程目录下新建一个文件夹,名字为AppMySQL再将sqlite3.h,sqlite3.lib这二个文件复制到这个文件夹中。将sqlite3.dll复制到工程目录下。 到此为止,我们的配置环境工作就做完了,配置工作虽然有点复杂,但是在接下来的编程实现的时候,你就会觉得这样的一小点代价是值得的。 三、编程实现 现在我们编写一个简单的程序。首先我们在CSQLiteSampleDlg类的头文件顶部加上一下代码: 然后在OnInitDialog()方法中加入代码,加完代码后的OnInitDialog()方法如下: BOOL CSQLiteSampleDlg::OnInitDialog() // Add "About..." menu item to system menu. // IDM_ABOUTBOX must be in the system command range. CMenu* pSysMenu = GetSystemMenu(FALSE); // Set the icon for this dialog. The framework does this automatically CString Errstr;//错误字符串 MessageBox("can't open first.db:"+Errstr); return TRUE; // return TRUE unless you set the focus to a control 我已经作了注释,相信大家都能够看懂吧,这小段代码用来打开一个数据库,当数据库不存在的时候就会新建一个,SQLite的使用是很方便的,在以后的几篇文章中我再具体介绍SQLite数据库使用的其他知识。
www.sqlite.com.cn/Upfiles/source/sqlite-3_3_7.zip
www.sqlite.com.cn/Upfiles/source/sqlitedll-3_3_7.zip
www.sqlite.com.cn/Upfiles/source/sqlite-source-3_3_7.zip
sqlitedll-3_3_7.zip文件:这个是SQLite的动态链接库文件(包含sqlite3.def文件和sqlite3.dll文件)
sqlite-source-3_3_7.zip:这个是SQLite的源码文件(包含sqlite3.h等文件)
#include "AppMySQL/sqlite3.h"
#pragma comment(lib, "AppMySQL/sqlite3.lib")
{
CDialog::OnInitDialog();
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
// TODO: Add extra initialization here
sqlite3 *db=NULL;//数据库指针
int ret;
ret = sqlite3_open("first.db", &db); //打开指定的数据库文件,如果不存在将创建一个同名的数据库文件
if(ret != SQLITE_OK)
{
Errstr = sqlite3_errmsg(db);
sqlite3_close(db);//关闭数据库
}
else MessageBox("open first.db successfully!");
sqlite3_close(db); //关闭数据库
}
- [转]SQLite 数据库介绍
- 介绍SQLite数据库
- SQLite数据库介绍网址
- SQLite数据库模型介绍
- SQLite 数据库介绍
- SQLite数据库介绍
- android数据库SQLite介绍
- sqlite数据库介绍一
- System.Data.SQLite数据库介绍
- android之SQLite数据库介绍
- System.Data.SQLite数据库介绍
- Android SQLite 数据库详细介绍
- Android SQLite 数据库详细介绍
- System.Data.SQLite数据库介绍
- System.Data.SQLite数据库介绍
- android 数据库SQLite基本介绍
- SQLite数据库的简单介绍
- Androdi中的SQLite数据库介绍
- Magento在CMS Page中增加用户信息变量
- C++程序,你能一眼看出i的值吗?
- C#_泛型
- 添加一个序号列
- oracle的时间转换
- 介绍SQLite数据库
- 如何坚持嵌入式学习(转载)
- CUDA4.0 inline PTX汇编程序开发( 0 )
- limodou的学习记录
- JAVA jdk 环境变量配置
- limodou的学习记录
- 为什么C++编译器不能支持对模板的分离式编译
- 电脑蓝屏参数
- C语言如何用OpenGL