一、sqlite简介
sqlite是遵守ACID的关联式数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。
不像常见的客户-服务器范例,sqlite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接API调用。这在消耗总量、延迟时间和整体简单性上有积极的作用。整个数据库(定义、表、索引和数据本身)都在宿主主机上存储在一个单一的文件中。它的简单的设计是通过在开始一个事务的时候锁定整个数据文件而完成的。
(摘自wiki: http://zh.wikipedia.org/w/index.php?title=SQLite&variant=zh-cn)
这个介绍就不说了,反正它就是个小型的sql数据库,有点类似于ACCESS。先来试试它的功能吧。
二、初步试探
经过多方搜索,我找到了sqlite在.NET平台的支持库,点击这里下载。我按照默认安装,路径为:”c://program files/sqlite.net”,安装后进入这个文件夹,里面有好多文件,我们只需要”System.Data.sqlite.DLL”,很小,只有605K。打开VS,新建一个控制台程序sqlitetest。引用刚才提到的DLL文件。然后引用”System.Data.sqlite”命名空间。现在就可以试试了。
从网上查询到了一些资料,现在运用一下,看看行不行。
我声明了一个全局字符串变量”dbName”,方面以后使用。
sqliteConnection.CreateFile(dbName);
是不是超级简单。接下来就是连接了。同样是sqliteConnection这个类。这个类有3个构造函数,一个是空参数,另一个是sqliteConnection类型,就是复制一个连接了,最后一个是字符串类型(连接字符串),这个连接字符串包含数据库信息已经密码(这个轻量级的数据库也支持密码哦,好厉害),我现在还不懂格式是什么,先试试默认构造函数。网上给的是使用sqliteConnectionStringBuilder这个类构造连接字符串。它有很多属性,现在要用的是DataSource属性,把dbName赋给它。还有Password属性,没有密码吧,赋给它””吧。然后就是打开数据库了。所有代码如下:
// 建立数据库连接并打开数据库
sqliteConnectionconn = new sqliteConnection();
sqliteConnectionStringBuilderconnsb = new sqliteConnectionStringBuilder();
connsb.DataSource = dbName;
connsb.Password = "" ;
conn.ConnectionString = connsb.ToString();
conn.Open();