首先建立.net Core API - empty 这个就不说了

然后创建新的Controller

记得添加路由

[Route("api/Users")]

然后在Nuget Packages安装 所需安装包

这里是用mysql所以下载如下的mysqlSugarCore

(切记不要忘记安装Mysql.Data)

创建实例化class文件DbText.cs

用于连接数据库,初始化

privateDbText()

{

}public static string ConnectionString { get; set; }public staticSqlSugarClient GetInstance()

{var db = newSqlSugarClient(ConnectionString);returndb;

}

当然记得引用MySqlSugar的库

然后在appsetting.json中创建连接字符串

点击Startup.cs在ConfigureServices函数中:

public voidConfigureServices(IServiceCollection services)

{

services.AddMvc();

DbText.ConnectionString= Configuration.GetConnectionString("DefaultConnection");

}

然后创建model层这里我根据数据库中的字段来创建

Ok接下来前期的工作完成了 ,利用sqlSugar进行基本的增删改查操作

Select

创建select接口

[HttpPost("select")]public stringSelect(Users user)

{using (var db =DbText.GetInstance()) {//查询所有数据的前五条并转化为Json格式

var top5 = db.Queryable().OrderBy(it =>it.username).ToJson();//简单的条件查询,查询表中所有女生的名字

var girl = db.Queryable().Where(it =>it.sex ==0).Select("name").ToJson();returngirl;

}

}

点击运行后 用postman进行调试可以看到从数据库中取出的前5条数据以JSon的格式返回或者表中女生的名字

Insert

接下来尝试用sqlsugar实现增加的操作

[HttpPost("add")]public stringRegister(Users user)

{//这里直接不加判断就增加一条学生数据

using (var db =DbText.GetInstance())

{var status =db.Insert(user);//查询刚插入的sex是否有值

var sex = db.Queryable().Single(it => it.userid ==status.ObjToInt()).sex;return "status:"+status.ToString() + ",sex:" +sex;

}

}

结果

发现数据库汇总的确多了一条数据插入成功

顺便来研究一下这个db.Insert()的返回值到底是什么东西

我换了一组值进行再次post

可以发现status从7变成了8我观察数据库发现这就是我的主键自增字段id的值(话说为什么就不是bool值呢)

Delete

然后来进行删除操作

[HttpPost("delete")]public boolRemoveUser(Users user)

{using (var db =DbText.GetInstance())

{//删除根据主键//db.Delete(10);//主键批量删除//db.Delete(new string[] { "100", "101", "102" });//假删除//db.FalseDelete("is_del", 100);//等同于 update school set is_del=1 where id in(100)//db.FalseDelete("is_del", it=>it.id==100);//同时满足条件删除

bool status = db.Delete(new Users() { username = "issa2018",password = "123457"});returnstatus;

}

}

运行postman后发现返回false我去 难道不是我想的这样??

然后我改变代码

bool status = db.Delete(new Users() { userid = 8});

这样就返回为true了 所以这个方法只能用于主键为参数!!!

最无语的就是我将代码改成如下(密码是错误的)以为他要同时满足条件才能删除

bool status = db.Delete(new Users() { userid =7,password = "123445"});

但返回结果却是true(也就是仍然删除了userid为7的列)

最后发现满足多条件删除得这么来,感觉稍微有点麻烦啊

bool status = db.Delete("username=@username and password=@password", new { username = user.username,password = user.password});

那我还不如这样

bool status = db.Delete("username=‘"+user.username+"‘ and password=‘"+user.password+"‘");

Update

先看下如何用sqlsuagr怎么修改吧

[HttpPost("update")]public boolEditInfo(Users user)

{using (var db =DbText.GetInstance())

{//支持字典更新,适合动态权限//var dic = new Dictionary();//dic.Add("name", "第十三条");//dic.Add("areaId", "1");//db.Update(dic, 13);//这个更新会把除了更新的东西以外的全部值都为空赋进去因为是吧整个user带进去了//var updateStatus = db.Update(new Users { name = user.name, remark = user.remark }, it => it.username == user.username & it.password == user.password);//更新name和remark的值

var updateStatus = db.Update(new { name = user.name, remark = user.remark }, it => it.username == user.username & it.password ==user.password);returnupdateStatus;

}

}

Postman传递数据更新成功

下一次会整理更多有用的sqlsugar的功能

mysql sqlsugar_.net core +mysqlSugar(最为简单的增删改查)相关推荐

  1. PHP连接数据库MySQL打造xxx管理系统,实现简单的增删改查功能

    目录 前言 概述 内容 创建数据库表 实现列表 新增用户 删除用户 编辑用户 前言 最近刚学完PHP和Mysql,历时半个多月时间完成了这样一个简单的算是人员管理系统吧,为了加深印象总结一下,还有很多 ...

  2. 使用 NodeJS+Express+MySQL 实现简单的增删改查

    关于node.js暂时记录如下,以后有时间一定学习 文章来自简书,作者:sprint,2016-07 使用 Node.js + Express+MySQL 实现简单的增删改查 https://www. ...

  3. PHP操作Mysql简单的增删改查

    PHP操作Mysql简单的增删改查 今天晚上回想了一下php怎么操作mysql,突然发现都忘了,然后通过回忆,搜寻资料总结了以下几点,一是提醒自己不要忘了,再就是希望能帮助一些有帮助的朋友.大佬请路过 ...

  4. MyBatis学习--简单的增删改查

    jdbc程序 在学习MyBatis的时候先简单了解下JDBC编程的方式,我们以一个简单的查询为例,使用JDBC编程,如下: 1 Public static void main(String[] arg ...

  5. php xml 增删改查,PHP实现对xml进行简单的增删改查(CRUD)操作示例

    本文实例讲述了PHP实现对xml进行简单的增删改查(CRUD)操作.分享给大家供大家参考,具体如下: 假如有下面xml文件: 55.8 56 40 339 如何使用php对它进行CRUD?其实像这种简 ...

  6. mysql删除分表键_一文看懂 MySQL 分区和分表,提高表增删改查效率

    原标题:一文看懂 MySQL 分区和分表,提高表增删改查效率 作者:冯帅,精通Oracle. MySQL. 擅长异构数据库数据同步及迁移.数据库的设计和调优,对高可用方案有深入研究. MySQL分区和 ...

  7. Springboot整合JDBC和DBUtils,实现简单的增删改查.

    Springboot整合JDBC和DBUtils,实现简单的增删改查. 一.pom.xml文件 <?xml version="1.0" encoding="UTF- ...

  8. JOOQ初学-简单的增删改查demo

    初学JOOQ,写个blog为了mark一下,也方便大家交流.直接上代码了.在网上搜不到太详细的demo和文档,都是英文的.哎,忧桑...在这里写几个demo,大家看看,有不足望指教. 初步的数据库连接 ...

  9. Struts2 注解开发实现简单的增删改查,超详细教程

    声明:此文是原创,如果需要转载请注明出处:https://blog.csdn.net/hunter_max/article/details/80575542 上一篇博客<Struts2 注解开发 ...

最新文章

  1. [SCOI2009]生日礼物 双指针
  2. C#帮助类:MD5加密
  3. python 数组在最前面插入数据_python – 如何将数组插入数据库?
  4. 软文的作用真的有那么神奇吗?
  5. php赋值就变错误了,PHP基础陷阱题(变量赋值)_PHP教程
  6. hybrid App cordova打包webapp PhoneGap
  7. jad 反编译eclipse操作步骤
  8. python中tqdm的用法
  9. word转PDF(使用liberOffice插件)
  10. ApacheCN 活动汇总 2019.7.5
  11. Matlab guass-legendre求积代码
  12. 计算机磁盘管理打不开,教你怎样轻松解决磁盘打不开的问题
  13. linux tc限制网卡速度,使用TC 对LINUX服务器网卡进行带宽限制的办法
  14. java 订单支付_Java多订单多支付方式分配金额问题的解决
  15. 【快应用】account.authorize授权码模式登录报错1102
  16. 广东工业大学2017新生赛(决赛)-网络同步赛 1007 白色相簿的季节【全错位排列】
  17. 如何彻底关闭windows10自动更新,禁用Windows Update
  18. 电商平台解决方案丨B2B转型成就工业升级
  19. 二.App缓存图片 Bean类
  20. 计算机网络作业及答案

热门文章

  1. android夜间模式揭露动画,Android Material Design系列之夜间模式
  2. 粉丝提问:有没有人会做彩虹表
  3. matlab短均线滞后项,均线理论的滞后性问题
  4. css 汉字注音,日本语片假名
  5. CSS margin 外边距 属性的位置关系
  6. DIV固定宽度和动态拉伸混合水平排列
  7. CSS学习笔记-04 a标签-导航练习
  8. Laravel 不同环境加载不同的.env文件
  9. 【译】nginx关于location部分
  10. 使用echarts时,鼠标首次移入屏幕会闪动,屏幕会出现滚动条