C#连接SQLite数据库,
1.What?
由于数据量小,便采用了SQLite数据库。
2.建库
对SQLite了解较少,所以没有使用命令行方式建立数据库,直接在Firefox浏览器中安装了插件SQLite Manager,并建立了数据库(当然默认后缀名为.sqlite.这个可以在Tools->Options->Main中的default file extension for SQLite files改为db就可以了。要是已经建好了数据库可以直接更改数据库后缀名,将.sqlite改为.db)。如下图
3.安装dll
从System.Data.SQLite官网下载,下载地址为http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki 发现有很多,你可以这样:点击这个”sqlite-netFx40-setup-bundle-x86-2010-1.0.98.0.exe“下载,这是32位的,我是下载该版本的。
当然你的项目要是64位的也可以下载这个”sqlite-netFx40-setup-bundle-x64-2010-1.0.98.0.exe“。
这里需要谨慎,若是安装的版本不对,会出现错误"未能加载文件或程序集“System.Data.SQLite”或它的某一个依赖项。试图加载格式不正确的程序。"这时你就选择另一个(尽管你的电脑是64位,但项目不一定是)。
安装后打开安装的目录下的text.exe,测试是否安装成功(你也可以把自己建的数据库复制到该目录下,将Connection String中的test.db改成自己的数据库名)。成功的话会是这样:
4.引用DLL
在程序项目右键->添加引用。找到该目录下的System.Data.SQLite.dll加载。
5.编写连接代码
别忘了,using System.Data.SQLite; 连接字符串为"Data Source=|DataDirectory|\\西塘旅游.db;Pooling=true;FailIfMissing=false"; 我是把数据库放到AppData中了,不管放到哪里,这里的Data Source应用到你的数据库位置就行。 其他的数据库操作就和其他差不多了。只不过换了个前缀而已 例如SQLiteConnection--SQLConnection SQLiteCommend--SQLCommend SQLite...---SQL....6.问题汇总
我在摸索时遇到两种错误:(1)无法加载 DLL“SQLite.Interop.dll”: 找不到指定的模块
这是我使用包管理器安装SQLite DLL是出现的错误,应该是安装不全,具体原因我也不清楚。所以我使用了上述手动下载安装的方式解决了。
(2)未能加载文件或程序集“System.Data.SQLite”或它的某一个依赖项。试图加载格式不正确的程序
这里就是前面提到的,安装的版本不正确。