sqlite 取代mysql_C#——sqlite替代mysql过程中遇到的问题

项目背景:程序由网络版改成单机版,mysql数据库安装复杂容易出错,由sqlite3替代,----access不支持分页的sql操作

1.

问题:会出现”database is locked!

原因:“sqlite不支持多线程并发操作的,改造过程中,代码分散,数据库操作完成后数据库连接未被释放,或者引用存在,显式去释放资源,不成功

解决办法,由于时间有限,代码复杂,没时间一一优化,使用FluentData--ORM框架代替原来的Sqlite-.net的原始数据库操作

2.

问题:Sqlite3 DateTime格式问题,格式不一致出现DateTime字段的值无法正常读写!

原因:sqlite3 ,DateTime格式有类型限制,兼容性不好

解决办法:SqliteDev,修改数据类型DateTime--》Sqlite,程序中时间类型统一改为"yyyy-MM-dd HH:mm:ss","yyyy-MM-dd","HH:mm:ss"

3

问题:原始项目是vs2010的开发环境,小数据库改造是在vs2015中进行的,由于vs2015无打包插件,返回vs2010运行,运行不成功 -----出现:找不到请求的 .Net Framework Data Provider

解决办法:

1》在app.config中添加:

2》在vs2010环境中运行sqlite-netFx40-setup-bundle-x86-2010-1.0.101.0.exe

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值