SqlSugar常用增删改操作
一.添加数据
特别说明:
1.特别说明:对于自增长列的表插入数据后,当前自增长列的字段,仍旧为0,但可以通过Insert方法的返回值来获取
SqlSugarClient db = SugarContext.GetInstance();
//插入单条
db.Insert<student>(new student()
{
sno = "",
sname = "张三丰",
ssex = "男",
sbirthday = new DateTime(, , ),
@class = ""
}); //特别说明:对于自增长列的表插入数据后,当前自增长列的字段,仍旧为0
//但可以通过Insert方法的返回值来获取
UserInfo user1 = new UserInfo()
{
Name = "ceshi"
};
object idResult = db.Insert<UserInfo>(user1);
Console.WriteLine(user1.ToJsonString());
Console.WriteLine(idResult); //插入多条
List<student> stuList = new List<student>() {
new student() {
sno = "",
sname = "张无忌",
ssex = "男",
sbirthday = new DateTime(, , ),
@class = ""
},
new student() {
sno = "",
sname = "花无缺",
ssex = "男",
sbirthday = new DateTime(, , ),
@class = ""
}};
db.InsertRange(stuList); //设置不插入列,注意,这是全局设置,当执行完对应的操作需要清空
db.DisableInsertColumns = new string[] { "ssex", "sbirthday", "class" };
db.Insert(new student()
{
sno = "",
sname = "小明"
});
db.DisableInsertColumns = null;
Console.WriteLine(db.Queryable<student>().Count());
二、修改数据
//SqlSugar 支持匿名对象方式更新,支持对象部分数据更新
SqlSugarClient db = SugarContext.GetInstance(); //1.匿名对象更新
bool result1 = db.Update<UserInfo>(new { name = "张三丰" }, q => q.UserID == );
Console.WriteLine(result1);
//2.批量更新
int[] idList = new int[] { , , };
db.Update<UserInfo>(new { name = "网名" }, q => idList.Contains(q.UserID)); //3.指定对象更新
bool result3 = db.Update<student>(new student()
{
sno = "",
sname = "王丽华"
});
Console.WriteLine(result3); //4.指定对象更新,需要先获取在修改
student stu1 = db.Queryable<student>()
.Where(q => q.sno == "")
.First();
stu1.ssex = "女";
stu1.sbirthday = new DateTime(, , );
stu1.@class = "";
bool result4 = db.Update(stu1);
Console.WriteLine(result4); //5.设置不更新列
//db.DisableUpdateColumns ,指定不更新列,执行完修改后,再清空
三、删除数据
SqlSugarClient db = SugarContext.GetInstance();
//1.指定主键删除
bool result1 = db.Delete<UserInfo, int>();
Console.WriteLine(result1);
//2.指定条件删除
bool result2 = db.Delete<UserInfo>(q => q.UserID >= );
Console.WriteLine(result2); //3.指定主键批量删除
bool result3 = db.Delete<UserInfo, string>(q => q.Name, new string[] { "张三丰", "王小明" });
Console.WriteLine(result3);
//4.指定非主键批量删除
bool result4 = db.Delete<UserInfo, int>(q => q.UserID, new int[] { , });
Console.WriteLine(result4); //5.指定实体对象删除(必须要有主键)
bool result5 = db.Delete(new UserInfo() { UserID = });
Console.WriteLine(result5);
//6.指定Sql的where的片段删除
bool result6 = db.Delete<UserInfo>("UserID=@UserID", new { UserID = });
Console.WriteLine(result6);
更多参考:
.Net开源SqlServer ORM框架SqlSugar整理
SqlSugar常用增删改操作的更多相关文章
- .NET下对Web.config与App.Config的增删改操作的代码
把代码过程常用的内容做个收藏,下边代码段是关于 .NET下对Web.config与App.Config的增删改操作的代码. <?xml version="1.0" encod ...
- ASP.NET MVC深入浅出(被替换) 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式 第三节: EF调用普通SQL语句的两类封装(ExecuteSqlCommand和SqlQuery ) 第四节: EF调用存储过程的通用写法和DBFirst模式子类调用的特有写法 第六节: EF高级属性(二) 之延迟加载、立即加载、显示加载(含导航属性) 第十节: EF的三种追踪
ASP.NET MVC深入浅出(被替换) 一. 谈情怀-ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态 ...
- C# winform窗体设计-对数据库执行增删改操作
对于学习数据库的人来说,数据库的增删改可谓是最基本的了(小编其实也只是一个小白=-=),这篇文章,小编将于大家讲解数据库增删改操作 在执行数据库增删改的时候主要使用的:Command 类 ...
- Jquery easyui开启行编辑模式增删改操作
Jquery easyui开启行编辑模式增删改操作 Jquery easyui开启行编辑模式增删改操作先上图 Html代码: <table id="dd"> </ ...
- OracleHelper(对增删改查分页查询操作进行了面向对象的封装,对批量增删改操作的事务封装)
公司的一个新项目使用ASP.NET MVC开发,经理让我写个OracleHelper,我从网上找了一个比较全的OracleHelper类,缺点是查询的时候返回DataSet,数据增删改要写很多代码(当 ...
- [转]Jquery easyui开启行编辑模式增删改操作
本文转自:http://www.cnblogs.com/nyzhai/archive/2013/05/14/3077152.html Jquery easyui开启行编辑模式增删改操作先上图 Html ...
- [ruby on rails] 跟我学之(3)基于rails console的查增删改操作
本章节展开对model的介绍:包括查增删改操作.紧接着上面一节<[ruby on rails] 跟我学之HelloWorld> 创建模型 使用命令创建模型 创建表post,默认自带两栏位 ...
- JavaScript--DOM增删改操作
JavaScript使用DOM操作节点来进行增删改操作 <!DOCTYPE html> <html> <head> <meta charset="U ...
- Linq to SQL 简单的增删改操作
Linq to SQL 简单的增删改操作. 新建数据库表tbGuestBook.结构如下: 新建web项目,完成相应的dbml文件.留言页面布局如下 <body> <form id= ...
随机推荐
- 【CF】223 Div.1 C Sereja and Brackets
水线段树. /* 380C */ #include <iostream> #include <string> #include <map> #include < ...
- linux ERROR: ld.so: object '/lib/libcwait.so' from /etc/ld.so.preload cannot be preloaded: ignored.
[root@ora9i 3238244]# lsb_release -a LSB Version: :core-3.0-amd64:core-3.0-ia32:core-3.0-noarch:g ...
- USACO3.44Raucous Rockers
USACO挂了一小时..我坚持不懈的等..终于打开了 把3章最后一题交了 可以安心的睡去了 之前题意没看清楚 不知道要有序 写了一状压 结果TLE了 再优化也TLE 后来想写状态转移时发现 它必须有 ...
- 解决ASP.NET MVC AllowAnonymous属性无效导致无法匿名访问控制器的问题
在ASP.NET MVC项目中,一般都要使用身份验证和权限控制,但总有部分网页是可以匿名访问的.使用AllowAnonymous属性就可以指定需要匿名访问的控制器,从而跳过身份验证. 但是今天却遇到一 ...
- ssh 登录出现的几种错误以及解决办法
首先.确保server端的ssh服务是开的(service shhd start) 然后在client端输入: ssh usrname@serverip (远程登录) scp filename usr ...
- [C# 网络编程系列]专题三:自定义Web服务器
转自:http://www.cnblogs.com/zhili/archive/2012/08/23/2652460.html 前言: 经过前面的专题中对网络层协议和HTTP协议的简单介绍相信大家对网 ...
- [Qt]Qt中TreeWidget拖拽事件
文章在简书里啦 http://www.jianshu.com/p/45b740060aca
- java基础(十六)集合(三)
这里有我之前上课总结的一些知识点以及代码大部分是老师讲的笔记 个人认为是非常好的,,也是比较经典的内容,真诚的希望这些对于那些想学习的人有所帮助! 由于代码是分模块的上传非常的不便.也比较多,讲的也是 ...
- POJ 1325、ZOJ 1364、HDU 1150 Machine Schedule - from lanshui_Yang
Problem Description As we all know, machine scheduling is a very classical problem in computer scien ...
- Visual Studio 2015安装过程卡住,解决办法
Visual Studio 2015安装过程中卡住的情况有很多,我遇到的是卡在安装windows 更新KB2999226,解决办法 手动安装此更新包,位置在Visual Studio的安装包中,目录: ...