C#中使用SQLite数据库简介(上)

时间:2022-05-05 08:51:18

【SQLite数据库】

SQLite是一个开源的轻量级的桌面型数据库,它将几乎所有数据库要素(包括定义、表、索引和数据本身)都保存在一个单一的文件中。SQLite用C编写实现,它在内存消耗、文件体积、操作性能、简单性方面都有不错的表现。SQLite可以运行在多个平台,包括Windows/Linux/Unix等主流系统,还支持嵌入式系统如Android或Windows Mobile。

SQLite具有以下特征:实现多数SQL92的标准,包括事务(原子性、一致性、隔离性和持久性)、触发器和大多数的复杂查询。不对插入或者更新的数据进行类型检查,比如你可以将字符串插入到整数列中。

SQLite当前的版本3支持的数据类型有5种:

1.NULL:空值。

2.INTEGER:有符号整数,根据情况用1、2、3、4、6或8个字节存储。

3.REAL:浮点数。

4.TEXT:文本,用字符集UTF-8、UTF-16BE 或 UTF-16LE存储,视数据库编码格式而定。

5.BLOB:二进制字节序列,一般存放不易用数值或文本表示的对象,但理论上可以存放任何东西。

如果同常用的一些数据库比较,可以发现,上面至少缺少bit型和DateTime型,事实上,在SQLite中,通常bit型同整数共用INTEGER型,DateTime同文本共用TEXT型。当INTEGER类型字段值为0或1时,SQLite可以将其当成bit型(真或假)使用;当TEXT类型字段值符合一定格式时,SQLite可以将其当成DateTime来使用。常用的可看成DateTime的文本格式为yyyy-MM-dd或yyyy-MM-dd HH:mm:ss。注意:字符串"2012-01-09"为合法日期格式,而字符串"2012-1-9"、"2012-1-09"和"2012-01-9"被当成DateTime都是不合法的。

【C#中如何连接SQLite】

最常见的为System.Data.SQLite.dll数据访问驱动,它是SQLite专门为.net设计开发的,只要项目中引用了该dll文件而无须安装其他任何东西,推荐使用。