Sqlsuger操作SQLite数据库(入门篇)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

近期入职了一家新公司,项目中用到了Sqlsuger,上网查了一下才知道这门比较前沿的SqlSugar的框架,本文就介绍了SqlSugar入门基础内容,项目中用到了Sqlite数据库,所以就以Sqlite数据库为例,分享一下小编学习过程,以及学习过程中遇到的一些坑吧。

一、Sqlsuger介绍

竟然要学习Sqlsuger首先得知道是什么吧。

1.Sqlsuger是什么

SqlSugar是一款来自未来的ORM,拥有超前的理念,需求领跑第一线,可以毫不夸张的说,在设计理念上就算不更新几年都不会过时,我们每天都会跟踪用户需求,将这些用户需求分类和整理,把有共性的功能都整理出来,经历过长达7年的努力,需求成负增长,已经走向了成熟和完善,是一款真正用了功能齐全的ORM框架,如果你用过EF CORE或者DAPPER肯定会为功能缺失而无奈,该有的功能没有,花里胡哨的一大堆。如果你用SqlSugar, 会给你一个不错的选择, 不断给你惊喜。(这是官方解释),

小编理解的是它就是操作数据库的中间件,让我们能更方便的操作数据库。

2.Sqlsuger的优点

1.  .NET中唯一【全自动分表组件】+【读写分离】+【SAAS分库】+【大数据读写】 官方完美整合的ORM框架

2.  .NET 百万级大数据写入、更新和读取  性能最强框架

3.  使用最简单,语法最爽的ORM 【文档,视频教程

4.  支持 DbFirst、CodeFirst和WebFirst 3种模式开发

5.Github star数仅次于EF 和 Dapper,每月nuget下载量超过1万

更多优点: 简单易用、功能齐全、高性能、轻量级、服务齐全、官网教程文档、有专业技术支持一天18小时服务

支持数据库MySql、SqlServer、Sqlite、Oracle 、 postgresql、达梦、人大金仓、神通数据库、Access 、MySqlConnector、自定义扩展

二、使用步骤

1.引入Sqlsuger

1. 创建 .Net工程

小编使用的是最新版的Visual Studio 2022,创建了一个基于.NET Framework的控制台应用程序。

Sqlite数据库也提前用Navicat 工具创建好了。

2. 引入Sqlsuger

接下来便是在工程中引入Sqlsuger的dll文件,Visual Studio引入文件也很方便。使用NuGet 包管理器,在浏览中搜索 SqlSugar 点击安装即可(需要注意的是小编创建的项目是基于).NET Framework的控制台程序,所以下载的时候安装了支持.NET Framework版本的Sqlsuger,如果你创建的项目是其他的,比如 .NET Core 就要安装相对应的Sqlsuger。

 安装好了之后在Program.cs中引入Sqlsuger

代码如下(示例):

using SqlSugar;

2.操作Sqlite数据库

1. 创建数据库表实例

首先尝试的通过Sqlsuger创建Sqlite数据库中表的实例,代码如下

using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            ConnectionConfig connectionConfig = new ConnectionConfig();
            connectionConfig.DbType = DbType.Sqlite;
            connectionConfig.ConnectionString = @"Data Source=D:\sqlsuger\wxa7795cfeb64842e2\wechatsetting.db;Version=3";
            using (SqlSugarClient sugarClient = new SqlSugarClient(connectionConfig))
            {
                sugarClient.DbFirst.CreateClassFile(@"D:\sqlsuger\新建文件夹\ConsoleApp1\dbModels\");
            }
        }
    }
}

需要创建SqlSugarClient对象,创建时需要ConnectionConfig参数,创建ConnectionConfig参数时有两个主要的字段,

connectionConfig.DbType = DbType.Sqlite;//你要操作的数据库类型,这里选择的时Sqlite数据库
connectionConfig.ConnectionString  = "数据库连接字符串"//想要连接的数据库连接字符

在SqlSugarClient对象中有DbFirst.CreateClassFile方法,它的参数是你要生成的数据库表实体类的存放地址,

初次运行上述文件时会报错,无法找到System.Data.SQLite.dll相关依赖等错误,这是因为Sqlsuger操作Sqlite数据库时用到了System.Data.SQLite.dll,和Newtonsoft.Json 安装完这两个包之后运行上面的代码 在对应的文件夹下便会生成表的实体类,

运行结果:

数据库表中的字段


 生成的实体类

 代码片段如下:

2. 增删改查的操作

小编写了最简单的几个操作,Sqlsuger能实现的操作远不止这些,

增删改查操作直接上代码:

using Models;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            ConnectionConfig connectionConfig = new ConnectionConfig();
            connectionConfig.DbType = DbType.Sqlite;
            connectionConfig.ConnectionString = @"Data Source=D:\sqlsuger\wxa7795cfeb64842e2\wechatsetting.db;Version=3";
            using (SqlSugarClient sugarClient = new SqlSugarClient(connectionConfig))
            {
                //sugarClient.DbFirst.CreateClassFile(@"D:\sqlsuger\新建文件夹\ConsoleApp1\dbModels\");
                //插入的操作
                WDB_Template wDB = new WDB_Template()
                {
                    id = 4,
                    content = "测试",
                    isuse = 0
                };
                sugarClient.Insertable<WDB_Template>(wDB).ExecuteCommand();
                WDB_Template wDB_Template0 = sugarClient.Queryable<WDB_Template>().First();
                print(wDB_Template0);
                //查询的操作
                WDB_Template wDB_Template1 = sugarClient.Queryable<WDB_Template>().First();
                print(wDB_Template1);
                //更新的操作
                wDB.content = wDB.content + "更新后"; 
                sugarClient.Updateable<WDB_Template>(wDB).WhereColumns(it => new { it.id }).ExecuteCommand();
                WDB_Template wDB_Template2 = sugarClient.Queryable<WDB_Template>().First();
                print(wDB_Template2);
                //删除的操作
                sugarClient.Deleteable<WDB_Template>().In(it => it.id, 4).ExecuteCommand();
                WDB_Template wDB_Template3 = sugarClient.Queryable<WDB_Template>().First();
                print(wDB_Template3);
                Console.ReadLine();

            }
        }
        public static void print(WDB_Template wDB)
        {
            if (wDB == null)
            {
                Console.WriteLine("数据库中没有数据");
            }
            else
            {
                Console.WriteLine($"id = {wDB.id} ---- content = {wDB.content} ---- isuse = {wDB.isuse}");
            }
            
        }
    }
}

 运行结果如下

下面是Sqlsuger的官网大家感兴趣可以继续探究:

 https://www.donet5.com/Home/Doc

总结

以上就是今天要讲的内容,本文仅仅简单介绍了Sqlsuger的使用,而Sqlsuger提供了大量能使我们快速便捷地处理数据库的方法。总之就是方便

  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
SQLite数据库是一种轻量级的关系型数据库管理系统,具有小巧、快速、易用等特点,常用于嵌入式开发和移动应用开发。入门教程是帮助初学者快速掌握SQLite数据库基础知识和操作技巧的指南。 首先,SQLite数据库入门教程会介绍SQLite的特点和优势,以及适用的场景和应用领域。然后,教程会详细介绍如何安装和配置SQLite数据库,包括下载安装SQLite软件包和设置环境变量等步骤。 接着,教程会教授SQL语言的基本知识,包括创建数据库、表和字段等操作,以及对数据进行插入、查询、更新和删除等操作。通过实例演示和练习,初学者可以逐步掌握SQL语句的使用方法和编写技巧,提高数据库操作的熟练程度。 此外,入门教程还会介绍常用的SQLite命令行工具和GUI工具,如sqlite3、SQLiteStudio等,以及它们的使用方法和功能特点。初学者可以通过这些工具更方便地管理和操作SQLite数据库。 最后,教程还会介绍SQLite数据库的高级特性和扩展功能,如事务处理、索引优化、触发器等,帮助初学者进一步深入了解和应用SQLite数据库的高级技术。 总之,SQLite数据库入门教程是一个系统而全面的学习指南,能够帮助初学者快速入门并掌握SQLite数据库的基础知识和操作技巧。无论是对于嵌入式开发还是移动应用开发,学习SQLite数据库都是非常有帮助的。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值