这篇文章主要是对SqlSugar 做一次简单的性能测试对比。主要针对插入、批量插入、批量更新、读取性能的测试;

测试环境

1、.net core 2.2

2、FreeSql 0.3.17

3、sqlSugarCore 4.9.9.3

4、sqlserver 14.00.1000 Express、mysql 5.6

测试项目

以 console 程序,创建步骤:

1、dotnet new console

2、dotnet add package FreeSql

3、dotnet add package sqlSugarCore

代码展示

这个错误来自 sugar 创建数据库的时候,实体定义如下:


sugar的没有同步上来。

暂时先用 freesql 帮 sugar 创建了表。。。创建完后如下:

运行时又出现如下错误:

需要加一堆 IsIgnore

是的,还在报错,最终原因是我传入的 songs 是 IEnumerable,然后接受的参数类型正常应该是 Song[],希望作者看到了可以改进。

测试效果(SQLServer作为数据库)

第一次:

第二次:

EFCore 也参与进来的测试:

uploading-image-353246.png

测试效果(MySQL作为数据库)

EFCore 也参与进来的测试:

总结

然而上面提到的批量更新,今天先到这吧。下次有兴致了再测试。

其他库我就不测试了,谢谢观看!请求献上宝贵的一星。

github:https://github.com/2881099/FreeSql

然后 针对测试的实体类,FreeSql 可以这样查询:

一对一、多对一的查询:

var t0 = fsql.Select<Tag>().Where(a => a.Parent.Parent.Name == "粤语").ToSql();

一对多的查询:

var t1 = fsql.Select<Tag>().Where(a => a.Tags.AsSelect().Any(t => t.Parent.Id == 10)).ToSql();

多对多的查询:

var t2 = fsql.Select<Song>().Where(s => s.Tags.AsSelect().Any(t => t.Name == "国语")).ToSql();

最终的测试代码:https://github.com/2881099/FreeSql/blob/master/Examples/orm_vs/Program.cs

FreeSql与SqlSugar性能测试对比相关推荐

  1. .NET(C#)有哪些主流的ORM框架,FreeSql,SqlSugar,Dapper,EF还是...

    前言 在以前的一篇文章中,为大家分享了<什么是ORM?为什么用ORM?浅析ORM的使用及利弊>.那么,在目前的.NET(C#)的世界里,有哪些主流的ORM,FreeSql,SqlSugar ...

  2. Firefox 和 Chrome 性能测试对比

    Google 于上周推出了 Chrome 75 的首个稳定版,更新说明里面虽然一如既往地写到"包含性能改进",但对包括笔者在内的大部分用户而言,这些所谓的改进其实很难感知. 所以才 ...

  3. SqlSugar与Fluent NHibernate的性能测试对比

    看上去SqlSugar这个东西声称最快的ORM,和java的 nhibernate比,其实除了批量操作快了不少,其他没大的差别. 转载于:https://www.cnblogs.com/legends ...

  4. android 2.2.3,升还是不升 Android2.2与2.3性能测试对比

    Android是目前最火的手机系统,自从去年年底最新的Android2.3版系统和首款搭载该系统的谷歌手机Nexus S发布,其它Android智能手机用户就在等待自己的手机能尽快更新到最新版本. H ...

  5. 笔记本电脑安装cuda10.2并使用pycuda、xgboost测试GPU计算效率(附Colab, Kaggle, BaiduAIStudio性能测试对比)

    硬件配置: 机型:机械革命s1,2018年 CPU:i7-8550U GPU:Nvidia Geforce MX150(满血版),2G显存 内存:单条16g (自己更换的) 软件信息: CUDA:v1 ...

  6. HttpURLConnection与 HttpClient 区别/性能测试对比

    ttpClient是个开源框架,封装了访问http的请求头,参数,内容体,响应等等, HttpURLConnection是java的标准类,什么都没封装,用起来太原始,不方便 HttpClient实际 ...

  7. ignite mysql_redis、ignite、mysql memory 内存数据库性能测试对比

    文章目录 1. 简介 1.1 什么是redis? 1.2 什么是ignite? 1.3 什么是mysql memory? 2. 测试 2.1.0 测试环境准备 2.1.1 测试ignite 2.1.2 ...

  8. Istio和Linkerd基准性能测试对比

    两年前,Kinvolk(https://kinvolk.io/) 优秀人士对 Linkerd 和 Istio 的性能进行了基准测试(https://kinvolk.io/blog/2019/05/pe ...

  9. 苹果A5X和英伟达Tegra 3:性能测试对比

    苹果的营销副总裁菲尔·席勒(Phil Schiller)在发布会舞台上详细介绍了苹果新处理器A5X SoC的优秀性能,当时他甚至干脆单刀直入地表示,A5X图像处理性能是其竞争对手英伟达Tegra 3的 ...

最新文章

  1. top在html5里什么意思,html中的scrolltop是什么意思
  2. Synchronized、偏向锁、自旋锁、轻量级锁以及锁的升级过程
  3. 笔记本电脑频繁自动重启_笔记本电脑自动重启是什么原因
  4. 台式计算机驱动程序未被安装,电脑未能成功安装设备驱动程序怎么办
  5. leadshop开源商城系统
  6. 渗透-N种反弹shell方法
  7. 接口设计的一些小总结
  8. 2021-08-04 WHERE条件查询
  9. Android 用户界面---拖放(Drag and Drop)(三)
  10. 成田机场坐access到品川_东京旅游---成田机场到东京市内的最全交通指南!
  11. 音频信号频率测试软件,音频信号发生器软件(MyToneTest)
  12. 苹果ipa签名工具免越狱下载_苹果签名——超级篇
  13. 什么是“双重支付”,即“双花”
  14. Visual studio2022“无法生成.exe文件,系统找不到指定文件
  15. Enigma密码机初级解析
  16. 微信小程序进度条样式_详解微信小程序——自定义圆形进度条
  17. PS教程!手把手教你绘制3个效果酷炫的GIF动画效果
  18. 数据可视化—复杂网络关系图的绘制
  19. 为什么ASO很重要?
  20. OpenCV的本地相机抓图和本地视频取帧

热门文章

  1. 每周一个 Python 模块 | calendar
  2. Python之ORM
  3. springmvc的执行流程详解
  4. ubuntu系统操作常见错误
  5. Android笔记: 解决ScrollView嵌套ListView的冲突方法
  6. nagios学习笔记(二)
  7. mysql多表查询插入更新_Mysql多表查询,多表插入和多表更新
  8. 酒店管理系统c语言带注释,酒店管理系统--C语言版.pdf
  9. 关系型数据库(RDBMS)优势
  10. MySQL高级 - 常用工具 - mysql