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

一、SqlSugar是什么?

二、使用步骤

1.Nuget安装

2.使用实例代码

剩余条件查询和删除、修改代码后续更新

总结


文章目录

  • 前言
  • 一、pandas是什么?
  • 二、使用步骤
    • 1.引入库
    • 2.读入数据
  • 总结

前言

如何安装使用SqlSugar和增删改查基本操作

一、SqlSugar是什么?

一款轻量级并且特别强大的ORM,支持常见的关系型数据库。

二、使用步骤

1.Nuget安装

①右键解决方案名称,点击管理Nuget程序包

搜索SqlSugar,选择安装版本,点击安装

选择版本时注意各个版本对.net环境的要求,一般选低一点 的就够用了

安装成功后可以看到引用中就多出了SqlSugar引用

2.使用实例代码

该实例为对一个用户表进行增删改查操作

①创建一个用户表,结构如下

②创建好数据库表之后,调用下面SqlSugarUtil中的GenerateEntity()方法生成对应的Model类,或者自己手写创建也可以,用户model类Tb_User.cs如下:

public partial class Tb_User{public Tb_User(){}/// <summary>/// Desc:/// Default:NULL/// Nullable:True/// </summary>           public string F_UserId {get;set;}/// <summary>/// Desc:/// Default:NULL/// Nullable:True/// </summary>           public string F_UaerName {get;set;}/// <summary>/// Desc:/// Default:NULL/// Nullable:True/// </summary>           public string F_UserEmail {get;set;}/// <summary>/// Desc:/// Default:NULL/// Nullable:True/// </summary>           public string F_Password {get;set;}/// <summary>/// Desc:/// Default:NULL/// Nullable:True/// </summary>           public string F_UserPower {get;set;}/// <summary>/// Desc:/// Default:NULL/// Nullable:True/// </summary>           public string F_UserArea {get;set;}/// <summary>/// Desc:/// Default:NULL/// Nullable:True/// </summary>           public DateTime? F_RegisterTime {get;set;}/// <summary>/// Desc:/// Default:NULL/// Nullable:True/// </summary>           public DateTime? F_InsertTime {get;set;}/// <summary>/// Desc:/// Default:NULL/// Nullable:True/// </summary>           public DateTime? F_UpdateTime {get;set;}}

②以下为增删该查操作实例代码

public class SqlSugarUtil{public static string ConnStr = @"Server=xxx.xx.xx.xxx;Initial Catalog=数据库名称;User ID=数据库用户ID;Password=密码;max pool size=512";/// <summary>/// 获取程序数据库操作对象/// </summary>/// <param name="strConn">数据库连接字符串</param>/// <returns></returns>public static SqlSugarClient GetDb(string strConn){var db = new SqlSugarClient(new ConnectionConfig(){ConnectionString = strConn,DbType = DbType.SqlServer,IsAutoCloseConnection = true,InitKeyType = InitKeyType.Attribute,AopEvents = new AopEvents{OnLogExecuting = (sql, p) =>{Console.WriteLine(sql);Console.WriteLine(string.Join(",", p?.Select(it => it.ParameterName + ":" + it.Value)));}}});return db;}//根据连接字符串将数据库表生成实体public void GenerateEntity(){try{var db = GetDb(ConnStr);db.Ado.CheckConnection();var path = AppDomain.CurrentDomain.BaseDirectory + "\\Entity";//生成的实体存入的文件夹路径if (!Directory.Exists(path)) Directory.CreateDirectory(path);db.DbFirst.CreateClassFile(path, "生成的文件的头部的解决方案名称");}catch (Exception e){Console.WriteLine(e);}}/// <summary>/// 查询所有的用户记录/// </summary>/// <returns></returns>public List<Tb_User> getUserList(){try{return AppDb.GetDb().Queryable<Tb_User>().ToList();}catch (Exception ex){return null;}}/// <summary>/// 查询符合条件的第一条记录/// </summary>/// <param name="model"></param>/// <returns></returns>public Tb_User getUser(Tb_User model){try{return AppDb.GetDb().Queryable<Tb_User>().Where(it => (it.F_UserEmail.Equals(model.F_UserEmail))).First();}catch (Exception ex){return null;}}/// <summary>/// 插入一条学生记录/// </summary>/// <param name="model"></param>/// <returns></returns>public int InsertUser(Tb_User model){try{return AppDb.GetDb().Insertable<Tb_User>(model).ExecuteCommand();}catch (Exception ex){return -1;}}/// <summary>/// 查询之前对所给参数进行判断,然后查询出所有符合条件的记录(可对结果按某个字段进行排序)/// </summary>/// <param name="selectModel"></param>/// <returns></returns>public List<Tb_User> getUserList(Tb_User selectModel){try{return AppDb.GetDb().Queryable<Tb_User>().WhereIF(selectModel.F_UaerName != null && selectModel.F_UaerName.Trim() != "", it => it.F_UaerName.Equals(selectModel.F_UaerName)).WhereIF(selectModel.F_UserEmail != null && selectModel.F_UserEmail.Trim() != "", it => it.F_UserEmail.Equals(selectModel.F_UserEmail)).OrderBy("F_UaerName DESC")//按照用户名倒序排序.ToList();}catch (Exception ex){return null;}}/// <summary>/// 更新符合条件的用户记录的用户名/// </summary>/// <param name="model"></param>/// <param name="newName"></param>/// <returns></returns>public int updRecord(Tb_User model, string newName){int resultCount = 0;try{resultCount = AppDb.GetDb().Updateable<Tb_User>().Where(it => it.F_UaerName == model.F_UaerName &&it.F_UserEmail == model.F_UserEmail).SetColumns(p => p.F_UaerName == model.F_UaerName).ExecuteCommand();}catch (Exception e){return -1;}return resultCount;}}

总结

还有其他操作,比如执行自定义sql语句,后续更新

SqlSugar安装使用和插入、更新、删除等基本操作相关推荐

  1. 栈和队列的插入、删除等基本操作

    栈和队列 栈 栈:是一种特殊的线性表,其只允许在其固定的一段进行插入或者删除元素等操作:进行插入或者删除的一段称为栈顶,另一端称为栈顶: 栈的特性: 先进先出 后进后出 栈的构造(C语言实现) 1. ...

  2. c 更新mysql数据_MySQL插入更新删除数据

    数据插入 插入完整的行 INSERT INTO customers VALUES(NULL, 'Pep E. LaPew', '100 Main Street', 'Los Angeles', 'CA ...

  3. mysql更新记录删除_mysql 插入-更新-删除

    a_liujin:main thread(UI thread),worker thread和asyntask (http://www.2cto.com/kf/201203/122729.html)|@ ...

  4. asp vb 插入,更新,删除数据库操作。

    记笔记. 离开学校,东西都还给老师了,哎. Select Case str  Case "insert":    sql="select * from ["&a ...

  5. JDBC连接(MySql)数据库步骤,以及查询、插入、删除、更新等十一个处理数据库信息的功能。...

    主要内容:  JDBC连接数据库步骤. 一个简单详细的查询数据的例子. 封装连接数据库,释放数据库连接方法. 实现查询,插入,删除,更新等十一个处理数据库信息的功能.(包括事务处理,批量更新等) 把十 ...

  6. jdbc mysql 存储过程查询数据_JDBC连接(MySql)数据库步骤,以及查询、插入、删除、更新等十一个处理数据库信息的功能。...

    主要内容: JDBC连接数据库步骤. 一个简单详细的查询数据的例子. 封装连接数据库,释放数据库连接方法. 实现查询,插入,删除,更新等十一个处理数据库信息的功能.(包括事务处理,批量更新等) 把十一 ...

  7. mysql插入第一_mySQL教程 第5章 插入 更新与删除数据

    第5章 插入 更新与删除数据 使用SQL Manager管理工具连接到schoolDB.由于三张表都设置了主键,因此,以下练习中插入的记录,主键不能重. 插入数据 1. 练习:为表的所有字段插入数据 ...

  8. 判断触发器正在处理的是插入,删除还是更新触发

    平常时写触发器(TRIGGER),一般会分别写插入(INSERT),删除(DELETE)和更新(UPDATE)单独的触发器. 但是有时候,可以视看处进逻辑程度,可以把三者写成一个触发器,只是在其中稍作 ...

  9. mySQL教程 第5章 插入 更新与删除数据

    第5章 插入 更新与删除数据 使用SQL Manager管理工具连接到schoolDB.由于三张表都设置了主键,因此,以下练习中插入的记录,主键不能重. 插入数据 1. 练习:为表的所有字段插入数据 ...

最新文章

  1. NO.7:别让异常逃离析构函数
  2. AI领域内,敢和BAT决斗的创业公司都在这了!
  3. 循环首次适应算法_面向6G的极化编码链路自适应技术
  4. 清华大学计算机系男女,【清华大学男女比例】2016清华大学各院系男女比例
  5. MapReduce程序之数据排序
  6. 计算机科学NIP,焦点:网络入侵防护(NIP)技术真的成了鸡肋吗? -电脑资料
  7. mysql安装了老版本_Windows 环境下 MySQL 5.7 安装配置指南
  8. Spring Boot 第一个程序
  9. Zabbix监控Redis状态
  10. 如何在苹果设备上查看 Apple Pay 交易?
  11. android alertdialog 自定义时间,Android自定义dialog可选择展示年月日时间选择栏
  12. ffmpeg rtmp 不清晰_SRS流媒体服务器之RTMP协议分析(2)
  13. 文献阅读1:Deep Learning for Image Super-resolution: A Survey
  14. linux重要的文件操作
  15. python下划线怎么输入_Python中下划线的使用方法有哪些
  16. 打印机无法双面打印处理办法
  17. 投融资项目入门和总结
  18. 计算机点了睡眠怎么开机,进入睡眠模式的电脑怎样重新启动
  19. ITM Architecture/ ITM 架构
  20. 如何用计算机设计班牌,班牌设计

热门文章

  1. python交互式环境执行_如何在交互式环境中执行Python程序
  2. JVM 垃圾回收就是这么简单(转载)
  3. 【关于一个单身狗在七夕向大家分享的简单必会算法题】
  4. 一个病毒的脱壳及修复
  5. 【项目实战】C语言+easyX带你实现:数字拼图游戏!来试试吧~
  6. error: cannot pull with rebase: Your index contains uncommitted changes.
  7. Linux操作系统综合实验
  8. UITextField 控件详解 我见过的史上最牛x的
  9. STM32F051K8U6按键中断实例
  10. iOS内购三:Receipt