C#如何使用SqlSugar操作MySQL/SQL Server数据库

本文主要是介绍C#如何使用SqlSugar操作MySQL/SQL Server数据库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一. SqlSugar 连接MySQL数据库

 public class MySqlCNHelper : Singleton<MySqlCNHelper>{public static SqlSugarClient CnDB;public void InitDB() {//--------------------MySQL--------------------CnDB = new SqlSugarClient(new ConnectionConfig(){ConnectionString = "server=127.0.0.1;uid=root;pwd=zhumengxy;database=fish",DbType = DbType.MySql,IsAutoCloseConnection = true,InitKeyType = InitKeyType.Attribute });//--------------------SQL Server--------------------//mDB = new SqlSugarClient(new ConnectionConfig()//{//    ConnectionString = "Data Source=your_server_name;Initial                            //    Catalog=your_database_name;User                 //          ID=your_username;Password=your_password",//    IsAutoCloseConnection = true,  // 查询完毕后自动关闭连接//})CnDB.Aop.OnLogExecuting = (sql, pars) =>{Console.WriteLine(sql + "\r\n" +mDB.Utilities.SerializeObject(pars.ToString()));Console.WriteLine();};}
}

二.  数据库操作

//插入
public async Task<bool> InsertRecordProModel(RecordProModel recordPro) => await CnDB.Insertable(recordPro).ExecuteCommandAsync() > 0;//查询1
public async Task<List<T>> QueryDataList<T>() => await CnDB.Queryable<T>().ToListAsync();//查询2
public async Task<List<AllotModel>> QueryAllotModelList(AllotModel allot) => await CnDB.Queryable<AllotModel>().Where(t => t.EsamNo == allot.EsamNo || t.ProdOrderNo == allot.ProdOrderNo).ToListAsync();//查询3
public async Task<bool> QueryUserModelIsExists(UserModel user) => await CnDB.Queryable<UserModel>().Where(t => t.UserName == user.UserName && t.PassWord == user.PassWord).AnyAsync();//删除
public async Task<bool> DeleteRecordProModelBW(int id) => await CnDB.Deleteable<RecordProModel>().Where(t => t.ID == id).ExecuteCommandAsync() > 0;//更新
public async void UpdateData(int id ,string esamNo)
{AllotModel userData = await CnDB.Queryable<AllotModel>().Where(t => t.ID == id).FirstAsync();if (userData != null){userData.EsamNo = esamNo;await CnDB.Updateable(userData).ExecuteCommandAsync();}
}

三.  Singleton类

public class Singleton<T>
{private static Singleton<T> _instance = null;public Singleton() { }public static Singleton<T> Instance(){if (_instance == null)_instance = new Singleton<T>();return _instance;}
}

四、AllotModel 类

 public class AllotModel{private int Id;public int ID{get { return Id; }set { Id = value;}}private string esamNo = "";public string EsamNo{get { return esamNo; }set { esamNo = value;}}private AppModel appInfo = new AppModel(); public AppModel AppInfo{get { return appInfo; }set { appInfo = value; }}private string cipherTxt = ""; public string CipherTxt{get { return cipherTxt; }set { cipherTxt = value;}}private string repetitions; public string Repetitions{get { return repetitions; }set { repetitions = value;}}private string prodOrderNo = "";public string ProdOrderNo{get { return prodOrderNo; }set { prodOrderNo = value; }}}

五.  使用

MySqlCNHelper  cn = new MySqlCNHelper();

bool blRet = await cn.InsertRecordProModel(model);

var List1 = await  cn.QueryDataList();

var List2 = await  cn.QueryAllotModelList(model);

bool blRet = await  cn.QueryUserModelIsExists(model);

六、完结

这篇关于C#如何使用SqlSugar操作MySQL/SQL Server数据库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/462431

相关文章

SQL 外键Foreign Key全解析

《SQL外键ForeignKey全解析》外键是数据库表中的一列(或一组列),用于​​建立两个表之间的关联关系​​,外键的值必须匹配另一个表的主键(PrimaryKey)或唯一约束(UniqueCo... 目录1. 什么是外键?​​ ​​​​2. 外键的语法​​​​3. 外键的约束行为​​​​4. 多列外键​

使用animation.css库快速实现CSS3旋转动画效果

《使用animation.css库快速实现CSS3旋转动画效果》随着Web技术的不断发展,动画效果已经成为了网页设计中不可或缺的一部分,本文将深入探讨animation.css的工作原理,如何使用以及... 目录1. css3动画技术简介2. animation.css库介绍2.1 animation.cs

C#特性(Attributes)和反射(Reflection)详解

《C#特性(Attributes)和反射(Reflection)详解》:本文主要介绍C#特性(Attributes)和反射(Reflection),具有很好的参考价值,希望对大家有所帮助,如有错误... 目录特性特性的定义概念目的反射定义概念目的反射的主要功能包括使用反射的基本步骤特性和反射的关系总结特性

使用雪花算法产生id导致前端精度缺失问题解决方案

《使用雪花算法产生id导致前端精度缺失问题解决方案》雪花算法由Twitter提出,设计目的是生成唯一的、递增的ID,下面:本文主要介绍使用雪花算法产生id导致前端精度缺失问题的解决方案,文中通过代... 目录一、问题根源二、解决方案1. 全局配置Jackson序列化规则2. 实体类必须使用Long封装类3.

Python文件操作与IO流的使用方式

《Python文件操作与IO流的使用方式》:本文主要介绍Python文件操作与IO流的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python文件操作基础1. 打开文件2. 关闭文件二、文件读写操作1.www.chinasem.cn 读取文件2. 写

PyQt6中QMainWindow组件的使用详解

《PyQt6中QMainWindow组件的使用详解》QMainWindow是PyQt6中用于构建桌面应用程序的基础组件,本文主要介绍了PyQt6中QMainWindow组件的使用,具有一定的参考价值,... 目录1. QMainWindow 组php件概述2. 使用 QMainWindow3. QMainW

使用Python自动化生成PPT并结合LLM生成内容的代码解析

《使用Python自动化生成PPT并结合LLM生成内容的代码解析》PowerPoint是常用的文档工具,但手动设计和排版耗时耗力,本文将展示如何通过Python自动化提取PPT样式并生成新PPT,同时... 目录核心代码解析1. 提取 PPT 样式到 jsON关键步骤:代码片段:2. 应用 JSON 样式到

MySQL精准控制Binlog日志数量的三种方案

《MySQL精准控制Binlog日志数量的三种方案》作为数据库管理员,你是否经常为服务器磁盘爆满而抓狂?Binlog就像数据库的“黑匣子”,默默记录着每一次数据变动,但若放任不管,几天内这些日志文件就... 目录 一招修改配置文件:永久生效的控制术1.定位my.cnf文件2.添加核心参数不重启热更新:高手应

java变量内存中存储的使用方式

《java变量内存中存储的使用方式》:本文主要介绍java变量内存中存储的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍2、变量的定义3、 变量的类型4、 变量的作用域5、 内存中的存储方式总结1、介绍在 Java 中,变量是用于存储程序中数据

关于Mybatis和JDBC的使用及区别

《关于Mybatis和JDBC的使用及区别》:本文主要介绍关于Mybatis和JDBC的使用及区别,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、JDBC1.1、流程1.2、优缺点2、MyBATis2.1、执行流程2.2、使用2.3、实现方式1、XML配置文件