C#使用sqlite的遇到的问题

  总结:官方文档阅读不够仔细,状态不好的情况下最好是休息

  应朋友的要求,决定帮他公司做一个简单的收款管理系统,替换之前的excel表格管理方式。一直以来,java是自己接触最多的编程语言,也是现在工作上面正在使用的,但是由于java在windows上面的诟病,需要jdk的支持,使得安装包相对庞大,且swing的UI效果在windows上面的体现另自己都不忍直视,故而转向winform,这个之前在大学的时候接触过的平台。数据库则是使用sqlite,毕竟其开源,便捷,轻量的特性让人很难不喜欢。

  许久没有使用C#,大学学的东西基本交给老师了,所以使用的时候就只能百度,google了,百度了一大堆,基本就都是从官网下下载sql 安装文件,进行安装后在安装好的bin目录下面找到System.Data.SQLite.dll然后引用进去即可,结果遇到的第一个问题是,找不到SQLite.Interop.dll,然后在网上继续搜索,将SQLite.Interop.dll放到应用程序生成的bin下面,结果还是报错。然后就各种网上找资料,均无法解决,最后经过朋友的指导,sqlite的官网看下,它提供的System.Data.SQLite.dll类库的net版本应该是3.5,而且是32位的,这个可以直接在http://www.sqlite.org/download.html上面下载,其他的安装好的版本大多数都有不稳定的原因。而SQLite.Interop.dll,在window下不需要这个,嵌入式wince才需要引入。引入这个官网上面单独下的System.Data.SQLite.dll后,需要将应用程序的目标平台设置为x86,具体方法是点击项目右键-->属性-->生成-->目标平台。然后将应用程序目标框架改为3.5,这里特殊说明下,.net与java不同的地方,他是从下向上兼容,java是从上往下兼容(个人理解),就是说,如果你用的.net 4.5以上的框架在实现的话,生成的exe只能在4.5及以上框架的window上面跑,如果是3.5的话,则可以在3.5+上面跑,而且现在win7及以上平台自带 net farmework3.5(以上),还有一点就是32位的exe可以运行在64位的电脑和32位的电脑,64位的就只能运行在64的电脑上,也就是说,你用x86+3,5 可以跑在任何win vista以上的系统 不管是(32位 or 64位)。

  

posted @ 2016-02-24 11:03  boann  阅读(1114)  评论(0编辑  收藏  举报