前言 转眼已经过了金九,光阴真的是似箭啊,周六日常加班,忙里抽闲就想鼓捣个啥看看,刚好最近想着有没有必要换个orm,从当时原生到Dapper,又到现在的Sqlsugar,因为经常听到几个不错的orm,就是今天想测试的Freesql,其实对于造轮子这种事,个人觉得其实是件好事,只有轮子多了,才会有车,虽然参差不齐,但开车的心情还是挺嗨皮的,就算磕磕绊绊,那也是体验过才知道,当然毕竟是开源的自己也可以扩展改造嘛. 开始 因为电脑上只有mysql,这里就单对mysql做下对比测试了,针对增删改查这些常…
c# 国内外ORM 框架 dapper efcore sqlsugar freesql hisql sqlserver数据常规插入测试性能对比对比 在6.22 号发布了 c# sqlsugar,hisql,freesql orm框架全方位性能测试对比 sqlserver 性能测试 引起了很多争议 声明 首先我还是要做一下声明,测的都是开源软件,都是有开源协议的,而且测试源码已经开放不存在有故意黑的主观意图,测试结果仅为博主的电脑的配置测试的结果为测试结果呈现,测试结果不为最终结果.如果有意见请文…
在2022年1月份本人做过一次sqlsugar,hisql,freesql三个框架的性能测试,上次主要是测的sqlserver下的常规插入(非bulkcopy的方式数据插入),hisql与目前比较流行的ORM框架性能测试对比 时间已经过半年,这次我就测的更完整点测试方案如下 测试方案 测试四种数据库(sqlserver,mysql,oralce,postgresql) 每种数据库写一遍测试文章 常规插入和批量插入 数据量从5条到100W间的数据插入 数据列从5列和50列的各种数据类型场景 开源测…
框架介绍 SqlSugar ORM是一款老牌国产ORM框架,生命力也比较顽强,从早期ORM不成熟阶段,一直存活到现在,我为什么要一直坚持,那是因为还有很多用户在使用,本来我能够较早推出新开源框架 ,可是用户还在不停的提新的需求和高的要求,所以我也尽我最大努力将SqlSugar更加完善 1.有人说不支持国产数据库 我支持了 2.有人说 PgSql MySql Oracle兼容性不好,经过努力我也让他成熟了 3.有人说SqlSugar异步是Task.RUN,我也将SqlSugar升级到NET 4.5…
介绍 SqlSugar是一款 老牌 .NET 开源ORM框架,并且在第一时间兼容.NET5,由果糖大数据科技团队维护和更新 ,Github star数仅次于EF 和 Dapper 优点: 简单易用.功能齐全.高性能.轻量级.服务齐全.有专业技术支持一天18小时服务 支持数据库:MySql.SqlServer.Sqlite.Oracle . postgresql.达梦.人大金仓 1.功能升级:高级保存 该功能满足各种复杂的增.删.改 存储 ,还适合导入数据验证 以前的代码 var x = Db.S…
介绍 SqlSugar是一款 老牌 .NET 开源ORM框架,由果糖大数据科技团队维护和更新 ,Github star数仅次于EF 和 Dapper 优点: 简单易用.功能齐全.高性能.轻量级.服务齐全.有专业技术支持一天18小时服务 支持数据库:MySql.SqlServer.Sqlite.Oracle . postgresql.达梦.人大金仓 新功能介绍 最新稳定版本5.0.2.8 ,发布后1个月时间NUGET下载量达到5000的版本,用户使用也相当满意 而在稳定版本的基础上又布了5.0.2…
这两天在对一些ORM进行性能测试(涉及SqlSugar.FreeSql.Fast.Framework.Dapper.LiteSql),测试用的是Winform程序,别人第一眼看到我的程序,说,你这测试没意义! 可能我的测试程序的某些地方写的比较变态吧,但我认为有现实意义,并且网上有相关网站崩溃问题的文章,那什么"爆高分析","崩溃问题",WinDbg用的很6,那写程序阶段为什么没发现呢? 场景 假设WebApi(或者说网站后台服务)正在被高并发访问,一段时间后,服务…
前言 上一篇<ORM增删改查并发性能测试>出现了点小失误,有的输出SQL日志的代码没有禁用,数据库连接字符串可能有问题.统一环境,统一代码后,重新写一篇. 这次重点是并发性能测试,真不是为了diss其它ORM,开始是因为我写的Dapper.LiteSql高并发场景下存在BUG,才写了这个测试,经过修改优化,最好Dapper.LiteSql通过了这个测试.然后Fast.Framework的作者对它的ORM非常自信,我就好奇,是否真的有他说的这么好,口说无凭,我就对它进程各种测试,包括这个高并发测…
hisql与目前比较流行的ORM框架性能测试对比 总体测试结果 插入记录数 hisql(耗时) sqlsugar(耗时) freesql(耗时) 5条 0.0107秒 0.0312秒 0.02675秒 10条 0.0111秒 0.0307秒 0.0271秒 50条 0.0174秒 0.0364秒 0.0430秒 100条 0.0281秒 0.0472秒 0.0922秒 200条 0.0310秒 0.0584秒 0.2319秒 500条 0.0712秒 0.1127秒 0.5996秒 1000条…
hisql与目前比较流行的ORM框架性能测试对比 hisql 一直定位为新一代的ORM框架 为低代码开发而生 测试数据数据库为sqlserver数据库 测试源码地址hisql与sqlsugar freesql测试源码 git clone https://github.com/tansar/HiSqlTestDemo.git 总体测试结果 插入记录数 hisql(耗时) sqlsugar(耗时) freesql(耗时) 10条 0.0270秒 0.1710秒 0.1981秒 100条 0.0395…
写在开头 2018年11月的某一天,头脑发热开启了 FreeSql 开源项目之旅,时间一晃已经四年多,当初从舒服区走向一个巨大的坑,回头一看后背一凉.四年时间从无到有,经历了数不清的日夜奋战(有人问我花了多长时间投入,答案:全职x2 + 前两年无休息,以及后面两年的持续投入).今天 FreeSql 已经很强大,感谢第一期.第二期.第N期持续提出建议的网友. FreeSql 现如今已经是一个稳定的版本,主要体现: API 已经确定,不会轻易推翻重作调整,坚持十年不变的原则,让使用者真真正正的不再关…
SqlSugar在查询的功能是非常强大的,多表查询.分页查询 . 一对一查询.二级缓存.一对多查.WhenCase等复杂函数.Mapper功能.和拉姆达自定义扩展等,用好了是可以做到真正零SQL的一款ORM. 首先将SqlSugar更新到4.8版本,下面我就来一一讲解每种查询的写法 创建DbContext public class DbContext { public DbContext() { Db = new SqlSugarClient(new ConnectionConfig() { C…
写在开头 2018年11月头脑发热到今天,一晃已经两年,当初从舒服区走向一个巨大的坑,回头一看后背一凉. 两年时间从无到有,经历数不清的日夜奋斗(有人问花了多长时间投入,答案:全职x2 + 两年无休息). 今天 FreeSql 已经很强大,感谢第一批.第二批.第N批持续提出建议的朋友,总算给社区交了一个满意答卷. v2.0.0 是一个稳定的版本,主要体现: 用户 API 已经确定,不会轻易推翻又作调整,坚持五年不变的原则,让使用者真真正正的不再关心 ORM 使用问题: 单元测试覆盖面广,5500…
hisql.net 官网(文档编写中) HiSql 源码(github) https://github.com/tansar/HiSql git clone https://github.com/tansar/HiSql.git HiSql 查询语句教程 数据插入插入 HiSql 提供了丰富多样的数据插入方式,通过极致的性能优化目前在常用的ORM中名列前茅 单表数据插入 性能测试结果 插入记录数 hisql(耗时) sqlsugar(耗时) freesql(耗时) 5条 0.0107秒 0.03…
话说C#程序员人手一个ORM,确实没有必要再写ORM了,不过我的ORM并不是新的,是从DBHelper演化过来的,算是DBHelper魔改版. 目前流行的ORM有EF.Dapper.SqlSugar.FreeSql.Chloe等,有经验的程序员总是在这些ORM基础上或者在DBHelper基础上再封装一套,再加上自己写ORM的,可谓人手一个ORM.可能是因为在框架当中,ORM入门相对简单吧,不过做好很难. 本项目来源:2014年我在上家公司做ERP.CRM之类的BS管理系统项目:当时公司用的就是O…
一.引言 做.Net这么多年,出现了很多很多ORM框架,比如Dapper,Sqlsugar,Freesql等等.在之前的项目中,用到的ORM框架也大多数是这几个老牌的框架. 不过最近园子关于.NET ORM HiSql的讨论挺多的,本系列将之前使用SqlSuger的一个项目,使用HiSql框架改造一下改项目. c# 国内外ORM 框架 dapper efcore sqlsugar freesql hisql sqlserver数据常规插入测试性能对比对比 项目介绍:项目是一个通用的后台管理系统,…
.NET ORM 前言 为什么要写这篇文章? 希望针对 SEO 优化搜索引擎,让更多中国人知道并且使用.目前百度搜索 .NET ORM 全是 sqlsugar,我个人是无语的,每每一个人进群第一件事就是拿来比较,每天要重复回答.重复解答.说服他们.想说服标签是名气大.使用者多的同类型 .NET ORM 非常困难,最多只能让他们勉强接受.FreeSql 不愿做自己发光的金子,希望在 2020年 写下这篇完整一点的 .NET ORM 比较,为准备使用 FreeSql 的朋友解惑,能排上百度搜索引擎当…
下期预告: 由于很多园友反馈,有的组件不应该缺席.测试复杂度不够.测试还缺乏一定的公平. 因此考虑在下一个版本中,确保在更加公平的前提下进行更高复杂度的测试 . 同时将分为2组测试,纯SQL组件及纯ORM组件, 如果纯SQL组件不足,就只进行纯ORM组件的测试. 待加入测试组件有Dapper.PetaPoco/NPoco.Elinq.FluentData ,有更好的建议,请留言. ----------------------------------------------------------…
轻量级ORM框架QX_Frame.Bantina系列讲解(开源) 一.框架简介 http://www.cnblogs.com/qixiaoyizhan/p/7417467.html 二.框架使用方式介绍 http://www.cnblogs.com/qixiaoyizhan/p/7418058.html 三.框架性能对比 敬请期待 [前言] 上一节我们对Bantina ORM框架进行了简单的说明介绍,在这一节中,我们将对Bantina框架的使用方式进行说明. 下面我们对Bantina 1.0 使…
前言 上一篇<一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](二)>我们通过如下操作: 创建实体及工具类 创建Repository类 完善View层 修改控制器 创建视图 数据库连接 创建数据库和表 实现了简单的数据库连接及数据查询操作,既然是简单的数据库连接,那我们有必要对它进行进一步的升级.封装.今天我们就引入一个国内开发者开发并维护的ORM开源框架.如果你当前还不知道什么是ORM,或者C#/.NET中有哪些主流的O…
其实这个问题好多年以前研究过: https://blog.csdn.net/xpnew/article/details/6909902 最近因为需要统计日结月结,给同事写了一套调用存储过程的代码.同时因为项目ORM层是通过SqlSugar实现的,就又研究了一下SqlSugar调用存储过程的内容. 折腾了一番之后,对于[c#获取存储过程返回值]这个技术点,又有了新一层认识.下面写一下要点总结: 一.核心内容是指定Command参数的Direction MyCommand.Parameters["@…
Django对数据库的操作 Django的 ORM 简介 ORM操作 (增删改查) ORM操作数据库的增删改查 ORM创建表关系 ORM中常用字段及参数 数据库的查询优化 ORM中如何开启事务 ORM --- 查询 (重点) 单表查询(增删改查) 常见的查询方法 神奇的双下滑线查询 多表操作 外键字段的增删改查 跨表查询(重点) 子查询 联表查询 聚合查询 分组查询 F与Q查询 Django的 ORM 简介 ORM: 对象映射关系 ORM的作用: 利用Python 面向对象的代码简单快捷的操作数…
day07 ORM中常用字段和参数 今日内容 常用字段 关联字段 测试环境准备 查询关键字 查看ORM内部SQL语句 神奇的双下划线查询 多表查询前提准备 常用字段 字段类型 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型,范围在 -2147483648 to 2147483647.(一般不用它来存手机号(位数也不够),直接用字符串存,) CharField…
我偶然听说sqlsugar的性能比dapper强.对此我表示怀疑(由于我一直使用的dapper存在偏见吧),于是自己测试了sqlsugar.freesql.dapper发现他们的给我的结果是 sqlsugar>dapper>freesql(这里并不是黑那个orm,毕竟不同orm功能不同,底层实现不同,适用场景不同性能当然不同).这让我很吃惊,dapper(号称orm king)一个执行sql的映射器,比不了基于linq语法的sqlsugar.同时也让我感到高兴,我高兴的是:orm的性能肯定还有…
系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊重知识产权,共建和谐开源社区. 以下开源项目(含组件),从网络搜集,后期会不断补充. 7.Email 组件 FluentEmail .NET平台下提供了SmtpClient类工开发者用于编写发送邮件的业务功能,该类能满足大部分场景下的业务需求,但是使用起来稍微有点麻烦. FluentEmail是一款…
产品的定位 做产品的都知道,是否支持多语言直接影响到产品的定位问题. 如果一个产品周期是一年的话,要完美支持多语言最少也得在加3个月!所需时间和页面数量.数据库表的数量和表的数据量成正比. 可以看出代价有多大,我们程序员就得和老板唠叨,做不得,成本太高. 如果前期不做,等到了后期项目表结构等都要重构,如果使用了大量的视图对于多语言来说就是恶梦. 非数据库方面的解决方案 请看我上一篇贴子 http://www.cnblogs.com/sunkaixuan/p/5699744.html 数据库表的设…
项目目标部署环境:CentOS 7+ 项目技术点:.netcore2.0 + Autofac +webAPI + NHibernate5.1 + mysql5.6 + nginx 开源地址:https://github.com/wmowm/nh.core 作为.net开发人员,我们最熟悉的肯定是经典的三层架构了 这里插入一个题外话,很多人喜欢拿三层跟mvc,mvvm 做一些比较,它们共通的只有一点,就是解耦,三层架构指的是项目结构,一个项目可以搭建三层,加个IDAL 那就是四层了,也可以是N层,…
目录 引言 控制反转 读写分离分库分表 理论基础 设计目标 现状调研 设计思路 实现之过五关斩六将 动态对象 动态模型缓存 数据源移植 查询表达式树深度移植 数据合并算法 事务支持 实际使用 展望未来 引言 前方硬核警告:全文干货11000+字,请耐心阅读 遥想去年这个时候,差不多刚刚毕业,如今正式工作差不多一年了.Colder开源快速开发框架从上次版本发布至今差不多有三个月了,Github的星星5个版本框架总共也有近800颗,QQ群从最初的一个人发展到现在的500人(吐槽下,人数上限了,太穷开…
前言 项目涉及到了一些设计模式,如果你看的不是很明白,没有关系坚持下来,写完之后去思考去品,你就会有一种突拨开云雾的感觉,所以请不要在半途感觉自己看不懂选择放弃,如果我哪里写的详细,或者需要修正请联系我,谢谢. 创建项目 1.SDK安装 我们开发用的vs版本是2019 .Net Core的版本是3.1 下载 SDK 地址 :https://dotnet.microsoft.com/download 2.新建项目 这里选择Core 版本是3.1 项目类型是API Docker支持我们不勾选,我会在…
介绍 大家好我是初久,一名从业4年的.Net开发攻城狮,从今天开始我会和大家一起对企业开发中常用的技术进行分享,一方面督促自己学习,一方面也希望大家可以给我指点出更好的方案,我们一起进步. 项目背景 该项目是一个日志分析平台,因为公司下位机会产生大量日志,没有一个地方统一管理和存放,也不方便分析排查问题,而孕育出来的一个系统,后面因为感觉挺好,公司就把各种系统全都对接了过来. 现在是一个日处理数据平均50w条左右,处理速度1ms 60条左右的系统. 我们这次讲的重点是分库分表不能偏离重点,所以我…