SQLite使用总结(C#版 潘鹏)

这篇博客总结了SQLite在C#环境下的使用经验,包括其嵌入式、速度快、配置简单等优点,以及一些可能遇到的问题。博主分享了SQLite的部署步骤,如设置目标平台,使用System.Data.SQLite库,并提供了正确的连接字符串示例。此外,还介绍了如何创建数据库、建立表以及插入数据。最后,博主提及SQLite可用于小型项目的数据库解决方案,并提到了SQLite中包含的EF6.0库可能带来的Entity Framework支持。
摘要由CSDN通过智能技术生成

简述

关系型

优点:

1.嵌入式,我的理解就是跟着程序走,轻便,只需一个dll可享受所有服务
2.速度比Mysql快
3.配置简单
4.可移植

缺点:

自己查吧

工具

SQLite下载地址 : http://www.sqlite.org/download.html
SQLite可视化工具:SQLite Database Browser(这个百度一下,种类还不少)

1.部署

  • 安装了SQLite后,其中有System.Data.SQLite,在项目引用

  • 项目—属性—目标平台 与 下载的SQLite版本对应
    -我下载的是.NET 4.5 x64的,目标平台更换为X64,否则报错,图如下
    这里写图片描述

2.连接

private SQLiteConnection _connection;
private void ConnectionDb(string dbName, string path = null)
{
    if(null == path)
        path = Environment.CurrentDirectory;

     var connectionString = string.Format(@"Data Source={0}\{1}.db;Pooling=true;FailIfMissing=false", path, dbName);
     _connection = new SQLiteConnection(connectionString);
    _connection.Open();
}

1.玩过数据库的人一看也明白什么意思了,就不加注释了

2.由此看出SQLite的后缀是.db

3.连接字符串的写法按网上的写法错误,估计不是版本更新了,就是没有测试就上传博文。错误图如下
这里写图片描述

4.连接字符串正确的写法可参考我的,或者在你安装SQLite后有一个”Test Application“的exe,可复制它的写法,运行后图如下
这里写图片描述

3.建库

1.在上面的连接给出的代码中已经有建库的代码,库名dbName

2.dbName,有,连接,无,创建

3.库中没有表是无法看到该库的

4.电脑上建一个txt,后缀改为db,就可以当做SQLite的库来用

4.建表

private void CreateTable(string tableName, List<string> columsName )
{
    var colums = columsName.Aggregate( (current, colum) => current + ("," + colum) );
     //建表的列时不用考虑列的类型
    var sql = string.Format("create table if not exists {0}({1})", tableName, colums);
    SQLiteCommand cmd = new SQLiteCommand(sql, _connection);
    cmd.ExecuteNonQuery();
}

1.定义表的字段,不用考虑类型

2.ExecuteNonQuery来执行SQL语句

5.插入

private void Insert(string tableName, List<string> valueList)
{
    var valus = valueList.Aggregate((current, valu) => current + string.Format(" ,'{0}' ", valu));
    var sqlInsert = new SQLiteCommand(_connection);
    sqlInsert.CommandText = string.Format("insert into {0} values({1})", tableName, valus);
    sqlInsert.ExecuteNonQuery();
}

6.关闭

private void CloseDb()
{
    _connection.Close();
}

题外话1:朋友接的私活,餐馆的管理程序,在数据库方面我给他推荐SQLite,这个我也只是听过,昨晚就先试用走通,暂时只是做了部署、连接、建库、建表、插入数据、关闭,结果图如下:
这里写图片描述
题外话2:安装SQLite后看到里面有EF6.0的dll,难道可以……

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值