Dapper C# 访问SQLite
1.以操作SQLite为例.先下载Dapper,项目引用添加Dapper.dll,然后入下
SQLiteConnectionStringBuilder sb = new SQLiteConnectionStringBuilder();
sb.DataSource = @"D:sqlite.db";
SQLiteConnection con = new SQLiteConnection(sb.ToString());
con.Open();
string sql = "select * from user";
foreach( User u in con.Query<User>(sql))
{
Console.WriteLine(u.Name);
}
con.Close();
参数查询:
SQLiteConnectionStringBuilder sb = new SQLiteConnectionStringBuilder();
sb.DataSource = @"D:\\sqlite.s3db"; SQLiteConnection con = new SQLiteConnection(sb.ToString());
con.Open(); var data = con.Query("select * from t_session where appkey=@appkey", new
{
appkey = appKey
}); con.Close();
添加:
con.Execute(" insert into t_session(appkey,appsecret,updatetime)values(@appkey,@appsecret,@updatetime)"
, new
{
appkey = appKey,
appsecret = appSecret,
updatetime = DateTime.Now
});
更新:
//更新
con.Execute("update t_session set appsecret=@appsecret where appKey=@appKey ",
new
{
appKey = appKey,
appsecret = appSecret
});
今天学习用Sqlite结果总出错:no such table: MyFriendInfo
翻译一下就是:没有找到MyFriendInfo表。
怎么会这样呢?在数据库里面明明有表的。
调试和查看原文件各级目录发现:
当Sqlite找不到相关的表的时候会自动创建。这下可明白了。问题出在路径上。
我在App.Config文件中是这样写的
- <appSettings>
- <add key="SqlConfiguration" value="Data Source= |DataDirectory|\MyFriendList.sqlite; Integrated Security='True'"/>
- </appSettings>
|DataDirectory| 的作用是定位到App_Data文件夹下面,源程序则是生成在\bin\Debug\目录下面,结果在Debug目录下面发现了Sqlite自动生成的数据库。这下明白了。不过在做WINFORM程序的时候如果还要安装,那数据库路径在Config文件中是不能写死的。放在Debug目录下面应该是一个解决办法吧。
如果是WEB应用程序这个问题就好解决了。
Dapper C# 访问SQLite的更多相关文章
- Qt5 开发 iOS 应用之访问 SQLite 数据库
开发环境: macOS 10.12.1 Xcode 8.1 Qt 5.8 iPhone 6S+iOS 10.1.1 源代码: 我在 Qt 程序里指定了数据库的名称来创建数据库,在 Win10.An ...
- 应用EF访问SQLite数据
创建项目,应用EF访问SQLite 1.创建项目 项目结构初始结构如下图所示,Netage.Data.SQLite 类库项目用于定义访问数据的接口和方法,Netage.SQLiteTest.UI 控制 ...
- 【Android】13.4 使用SQLite.NET.Async-PCL访问SQLite数据库
分类:C#.Android.VS2015: 创建日期:2016-02-27 一.简介 这一节演示如何利用以异步方式(async.await)访问SQLite数据库. 二.示例4运行截图 下面左图为初始 ...
- 【Android】13.2 使用自定义的CursorAdapter访问SQLite数据库
分类:C#.Android.VS2015: 创建日期:2016-02-26 一.简介 SQliteDemo1的例子演示了SimpleCursorAdapter的用法,本节我们将使用用途更广的自定义的游 ...
- 【Android】13.1 用Android自带的API访问SQLite数据库
分类:C#.Android.VS2015: 创建日期:2016-02-26 一.简介 这一节我们先来看看如何直接用Android自带的API创建和访问SQLite数据库. 1.创建SQLite数据库 ...
- 【Android】13.0 第13章 创建和访问SQLite数据库—本章示例主界面
分类:C#.Android.VS2015: 创建日期:2016-02-26 一.简介 Android 内置了三种数据存取方式:SQLite数据库.文件.SharedPreferences. 这一章我们 ...
- 并发访问sqlite数据库出现databse is locked的错误的一个解决办法
作者:朱金灿 来源:http://blog.csdn.net/clever101 在并发访问sqlite数据库会出现这样一个错误:databseis locked,这是sqlite数据库对并发支持不太 ...
- 【C#】使用EF访问Sqlite数据库
原文:[C#]使用EF访问Sqlite数据库 1. 先上Nuget下载对应的包 如图,搜索System.Data.SQLite下载安装即可,下载完之后带上依赖一共有这么几个: EntityFramew ...
- 以EntifyFramework DBFirst方式访问SQLite数据库
前面一直在找EF Code First方式来访问SQLite数据库,后面得出的结论是SQLite不支持 Code First, 虽然有非官方的库SQLite.CodeFirst可以使用,但一直没搞成功 ...
随机推荐
- xml的生成和发送
s2014-04-07 10:01:05 之前学的是解析,现在需要生成xml, 然后利用蓝牙或者wifi发送到服务器 2014-04-07 10:36:34 采用dom4j创建xml报错 后来发现安卓 ...
- 解析xml的问题未解决
工作上需要解析xml,目前的逻辑是:解析xml到对象中,然后对象再插入数据库.但这存在内存溢出的风险. 今天做的另外一件事是将循环用到工作上,暂时还没有测试,是否能保证程序的重启.有待观察 ##### ...
- C#代码生成工具:文本模板初体验 使用T4批量修改实体框架(Entity Framework)的类名
转自:http://www.cnblogs.com/huangcong/archive/2011/07/20/1931107.html 在之前的文本模板(T4)初体验中我们已经知道了T4的用处,下面就 ...
- PHP使用array_intersect()函数求数组交集
在PHP中求数组的交集,我们可以与PHP给我们提供的现成函数:array_intersect(),其用法格式为: array array_intersect(array array1,array ar ...
- iOS 之 文件缓存
对于信息量不是太大的数据,可以使用文件缓存来处理.文件缓存可以缓存字典和数组. 步骤一:创建路径 路径要一级一级往下创建,基本不用考虑创建失败的情况.但是如果创建失败了要怎么做呢?按道理应该提示出来. ...
- 《R包的分类介绍》
R分析空间数据(Spatial Data) R机器学习包(Machine Learning) R多元统计包(Multivariate Statistics) R药物(代谢)动力学数据分析包 R计算计量 ...
- CSS3动画效果——js调用css动画属性并回调处理详解
http://www.jb51.net/css/258407.html 这篇文章主要详细介绍了CSS3动画效果回调处理,需要的朋友可以参考下 我们在做js动画的时候,很多时候都需要做回调处理,如在一个 ...
- 用NetStream的appendBytes播放FLV
public class MiniStream extends Sprite { private var _buffer:ByteArray = new ByteArray(); private va ...
- 不使用模板导出Excel(C#版本)
不多说,直接上干货! using System; using System.Collections.Generic; using System.Linq; using System.Web; usin ...
- Spring4.14 事务异常 NoUniqueBeanDefinitionException: No qualifying bean of type [....PlatformTransactionManager]
环境为Spring + Spring mvc + mybatis:其中Spring版本为4.1.4 spring配置文件: <?xml version="1.0" encod ...