最近在使用C#编写工具。想加个本地数据库。考虑了一下,决定采用SQLite. http://novell.me
经过一段时间折磨,发现这玩意不是那么容易上手,需要一番折腾。遇到的问题,网上这里找那里找解决办法很费劲。 本文转载自http://novell.me
为了将来参考,为了大家也少走弯路,决定将相关过程整理起来。避免大家浪费重复的时间。希望你在这里能找到你要的东西。不用到处奔走。 Novell迷,迷Novell
(备注:文章将持续更新,直到我把这个备注删除,你看不到这个了,说明文章撰写完毕) 内容来自Novell迷网站
这里说的都是针对WinForm(就是窗体程序),不管什么WPF,什么ASP.NET. 本文引用自http://novell.me
第一部分:相关文件的准备
http://Novell.Me
需要的文件有, 内容来自Novell迷网站
1、SQLite3生成的一个DB文件(也就是数据库,你得创建出来用哇,这个可从官方下载,同时本站准备上传一份);
2、操作SQLite数据库的叫ADO.NET的东东,是一个DLL文件,大概是做连接用的吧。该DLL编译基于.net2.0,因此像我用VS2013经常用.net4.0时编译时会报错。这个后面补充解决办法。这里只说准备的文件。文件名: System.Data.SQLite.dll (待上传)MD5: ce797d602722b6b6f8b7f2bb376b2cc7 CopyRight http://novell.me
3、(可选)找一些SQLiteHelper.cs的类(class)。方便自己写程序。 本文引用自http://novell.me
第二部分:解决若干问题 Novell迷网站內容,版权所有
1、就是创建一个SQLite3的数据库来。下载了SQLite3后,在命令行下运行。(注意像我Windows7时因为CMD没有以管理员运行,这样会发现SQL语句能执行,但就是数据库不生成出来。后面以管理员权限运行CMD再打开SQLite3后,就可以正常操作了。这里我浪费了比较多时间。还以为哪里搞错了,其实就是权限问题;
Novell迷网站原创内容,未经允许,谢绝转载!
2、编译或者执行具体代码时报错: http://Novell.Me
- Additional information: Mixed mode assembly is built against version 'v2.0.50727' of the runtime and cannot be loaded in the 4.0 runtime without additional configuration information.
CopyRight http://novell.me
这个怎么解决呢?放心,好说,这个先在解决方案浏览器那里找到app.config 文件,我的打开后默认是下面这种: CopyRight http://novell.me
Novell迷,迷Novell
- <?xml version="1.0" encoding="utf-8" ?>
- <configuration>
- <startup>
- <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
- </startup>
- </configuration>
给加上若干行代码,变成如下:
http://Novell.Me
本文来自Novell迷网站 http://novell.me
- <?xml version="1.0" encoding="utf-8"?>
- <configuration>
- <startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>
- <startup useLegacyV2RuntimeActivationPolicy="true">
- <supportedRuntime version="v4.0" />
- </startup>
- </configuration>
我所增加的内容就是上面代码中第4行到第6行的内容。这个就是用于解决什么4.0,2.0兼容问题。不用多纠结,你加上便是了。
版权所有,未经Novell迷允许,不得转载!
转载请注明出处!本文地址 http://novell.me/master-diary/2014-10-09/cshare-dotnet-sqlite3-howto.html
(责任编辑:Novell迷)