如何C#操作SQLite数据库
或许有人之前在java开发中使用过SQLite,对它有些印象。在用Winform或Wpf开发小应用程序时,发现用SQLite数据库也是不错的。就像一个会员管理软件,开发完毕后,可以省去想sqlserver那些复杂的操作。软件安装时,不需要额外的数据库环境,简单、便捷。看到这里,您是否对SQLite感兴趣呢?下面来看一下关于如何C#操作SQLite数据库的问题。

SQLite介绍
SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine.
SQLite是一个开源、免费的小型的EmbeddableRDBMS(关系型数据库),用C实现,内存占用较小,支持绝大数的SQL92标准,现在已变得越来越流行,它的体积很小,被广泛应用于各种不同类型的应用中。SQLite已经是世界上布署得最广泛的sql数据库引擎,被用在无以计数的桌面电脑应用中,还有消费电子设备中,如移动电话、掌上电脑和MP3播放器等。
SQLite的关键字列表,支持的sql语法
简单介绍如下:
System.Data.SQLite是一个原始SQLite的加强版.它将是一个原版的sqlite3.dll完全替代品(你甚至就可以把它重命名为sqlite3.dll).它不需要链接.NET运行时,所以可以脱离.NET独立发布,然而它内嵌了一个完整的ADO.NET2.0引擎,为开发提供了完整的支持.
特性简介:
完整的ADO.NET2.0实现
整个工程完全基于VS2005和ADO.NET2.0全新构建,使用了全部的ADO.NETframework新特性.包括完整的DbProviderFactory支持,自动的分布式事务调用,广泛的模式支持,此外所有的类都是从ADO.NET2.0的基类继承下来的.
支持完整和精简的.NETFramework以及C/C++
①这个库不需要链接依赖.NET运行时,100%兼容原始的sqlite3.dll,可以使用非托管的C/C++进行开发.
可移植的数据库文件
①未加密的SQLite数据库文件可以自由的跨平台和处理器使用,包括非Windows平台.加密之后的数据库可以在全部Windows平台上使用.
②可以信赖的速度,比包括SqlServerMobile在内的其它大多数嵌入式数据库都要快速
③SQLite'安装所占用的空间相对于SqlMobile可谓忽略不计了.它在运行的时候占用更少的内存,同时生成的数据库也更小.
数据库加密
①可以对整个数据库文件进行加密.支持二进制和明文的密码.
支持使用VisualStudio2005设计
①你可以向ServerExplorer添加一个SQLite连接,使用查询设计器创建处查询语句,向一个数据集中拖拽一个表格等等!SQLite的开发者可以在包括体验版在内的各种VisualStudio2005下工作.
单文件再发布包容量在400kb以下
①将SQLite本身和ADO.NET封装捆绑编译在一起.预编译的二进制文件提供了x86,IA64,x64和ARM的版本.
广泛的SQL语言支持
SQLite支持大部分的SQL92标准(seebelow).支持命名和未命名的参数以UTF-8和UTF-16编码通过优化的管道传入SQLite内核.
用户自定义的函数和排序
①全面支持用户自定义函数和排序方式,意味着你可以用自己喜欢的.NET语言来实现SQLite没有提供的特性.这一切将非常的简单.
提供了全部的源代码.100%免费.
①全部的封装库源代码都是公有的.无论是个人还是商业应用都没有任何的协议约束.
下载不用安装就可使用,图形化界面,操作起来简单方便。

C#使用SQLite步骤:
(1)新建一个project
(2)添加SQLite操作驱动dll引用
(3)使用API操作SQLiteDataBase
将一些常用的功能封装一下,封装成SQLiteHelper类
如何C#操作SQLite数据库的更多相关文章
- Java操作Sqlite数据库-jdbc连接
Java操作Sqlite数据库步骤: 1. 导入Sqlite jdbc 本文使用sqlite-jdbc-3.7.2.jar,下载地址 http://pan.baidu.com/s/1kVHAGdD 2 ...
- 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)
1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name= ...
- EF6操作Sqlite数据库的项目兼容性问题
vs2010无法正确打开2015创建的项目里面操作Sqlite数据库时使用EF6创建的edmx文件(会显示空白) 但是可以正常查询 vs2015无法正确打开2010创建的项目里面操作Sqlite数 ...
- EF操作sqlite数据库时的项目兼容性问题
问题:vs2015打不开vs2010建的操作sqlite的实体数据模型edmx文件 原因: 当前电脑必须先安装:驱动库及sqlite的vs拓展 正常情况下安装驱动和拓展后,vs2015就应该可以正常打 ...
- JDBC访问及操作SQLite数据库
SQLite 是一个开源的嵌入式关系数据库,其特点是高度便携.使用方便.结构紧凑.高效.可靠. 与其他数据库管理系统不同,SQLite 的安装和运行非常简单,在大多数情况下,只要确保SQLite的二进 ...
- UWP: 在 UWP 中使用 Entity Framework Core 操作 SQLite 数据库
在应用中使用 SQLite 数据库来存储数据是相当常见的.在 UWP 平台中要使用 SQLite,一般会使用 SQLite for Universal Windows Platform 和 SQLit ...
- Android中操作SQLite数据库
我又回到了安卓的学习当中,忙来忙去终于忙的差不多有时间做自己的事情了,这感觉实在是太棒了!!本来想写android的控件以及他们的监视器的,但是我查了查android的手册,基本上都能查到,但是查有些 ...
- .NET环境下,通过LINQ操作SQLite数据库
//对应数据库中的某个表 [Table(Name = "main.Student")] public class Student { [Column(Na ...
- Python 操作 SQLite 数据库
写在之前 SQLite 是一个小型的关系型数据库,它最大的特点在于不需要单独的服务.零配置.我们在之前讲过的两个数据库,不管是 MySQL 还是 MongoDB,都需要我们安装.安装之后,然后运行起来 ...
随机推荐
- liunx postfix与sendmail 开启与关闭
1:检查sendmail服务的状态 service sendmail status 2:开启sendmail服务 service sendmail start 3:关闭sendmail服务 servi ...
- 本地访问Vmware虚机Web网站
情况:公司是域环境,Vmware网络设置的是NAT连接模式,里外装的都是Windows,虚机网络IP地址是自动获取的. 查看: 1.虚机Ping本地的IP地址可以Ping通: 2.本地Ping虚机的I ...
- C3算法 和 super
一. Python的继承 多继承 子类继承父类. 继承是为了节省开发时间.提高开发效率 代码得到了重(chong)用 一个类可以拥有多个父类 lass shen_xian: # 定义一个神仙类 de ...
- python3 多线程笔记
import threadingimport time #继承 class threading.Threadclass MyThread(threading.Thread): #类做初始化 def _ ...
- TCP/IP、Http、Https、Socket的区别
网络由下往上分为物理层.数据链路层.网络层( IP协议).传输层( TCP协议).会话层.表示层和应用层(HTTP协议) 接下来我来说说个人理解其中的TCP/IP.Http.Socket的区别 TCP ...
- sqoop导出数据
export是HDFS里的文件导出到RDBMS的工具,不能从hive.hbase导出数据,且HDFS文件只能是文本格式.如果要把hive表数据导出到RDBMS,可以先把hive表通过查询写入到一个临时 ...
- keil版本控制
keil5.15才有对git svn的支持,之前的有其它的svcs; http://www.keil.com/appnotes/files/apnt_279.pdf http://stdbit.c ...
- 牛客网练习赛28A
题目链接:https://www.nowcoder.com/acm/contest/200/A 链接:https://www.nowcoder.com/acm/contest/200/A来源:牛客网 ...
- `aclocal-1.10' is missing on your system
root@ubuntu31:~/linux-ftools-master# makecd . && /bin/bash /root/linux-ftools-master/missing ...
- Object.create 以及 Object.setPrototypeOf
第一部分 Object.crate() 方法是es5中的关于原型的方法, 这个方法会使用指定的原型对象以及属性去创建一个新的对象. 语法 Object.create(proto, [ properti ...