前言 入坑 wcdb 有两个月了,整体来说还是很不错的,具体优点可以参考文档说明,由于官方明确说明不支持 SQL 只好自己写一个扩展支持一下了…
介绍 不知道大家在用Dapper的时候SQL语句是写到哪的,目前看网上的例子都是写到类里面的. 此项目的目的是把SQL语句放到文件(xml)中 目前只是初步版本,只是说明了意图,后面会持续完善和优化 GitHub 地址 功能说明 SQL 语句单独存放在文件(xml)中 支持配置多文件夹(暂不支持指定具体文件) 实时监听文件变化 支持多数据库(Dapper 本身就支持多数据,为什么这里说支持多数据呢?后面会讲到) 支持读写分离(功能虽然有,但配置看起来不爽,后续应该会优化. 负载平衡算法还未实现)…
OQL如何支持CASE WHEN? 今天,一个朋友问我,OQL可否支持CASE WHEN语句?他给的示例SQL如下: then '启用' else '停用' from tb_User OQL是SOD框架的ORM查询语言,它类似Linq,但是它诞生的历史比Linq早,并且更加接近SQL语法.所以,对SOD框架而言,对应ORM如何支持CASE WHEN,就等于是问OQL如何支持CASE WHEN了. 这个问题已经不止这一个朋友来问我了,我想了下,还是把这个问题的解决写一篇博客,给大家一种新的解决方案…
MiniProfiler.3.0.10 用于MVC4.0中可以显示执行时间,但是不能显示SQL语句,怎么解决?…
项目是基于框架Yii 2.0开发的. 今天梳理一些数据统计功能代码的时候,想把当前运行的sql语句打印出来,然后放到navicat工具里面运行,并分析一下运行效率和调优方案,之前大部分时候都是写增加.删除.修改.查询,这个打印sql语句的还真是用的很少,去官网查了一下资料,完美解决. Yii 2.0提供2种数据操作方式,一种是数据模型[models],一种是[\yii\db\Query()],具体使用哪种,看个人喜好. models模式打印sql语句举例如下: $query = User::fi…
BaseDal类: public class BaseDal : IDisposable { #region 事件 internal Func<bool> DBCommitting; internal Action<bool> DBCommitted; internal Func<object, bool> DBAdding; internal Action<object, bool> DBAdded; internal Func<object, bo…
mybatis3.2.7有一个bug,使用log4j2 (2.0.2)版本时,会找不到类 ,导致启动失败,详见 https://github.com/mybatis/mybatis-3/issues/235 但没过多久 , 3.2.8就已经修复了这个bug , 最新的mybatis3.2.8下载地址为: https://github.com/mybatis/mybatis-3/releases mybatis 3.2.8 整合 log4j2.0.2并不复杂 , 如果用spring-mvc做为we…
时间长不用就总是忘记,好记性比不上烂笔头,记录下来备用: Yii::$app->getDb()->getQueryBuilder()->build($query));…
前言 在EFCore中执行Sql语句的方法为:FromSql与ExecuteSqlCommand:在EF6中的为SqlQuery与ExecuteSqlCommand,而FromSql和SqlQuery有很大区别,FromSql返回值为IQueryable,因此为延迟加载的,可以与Linq扩展方法配合使用,但是有不少的坑(EFCore版本为1.1.0),直接执行Sql语句的建议不要使用FromSql,但是EFCore中并没有提供SqlQuery方法,因此下面会贴出SqlQuery的实现代码供大家参…
一次执行多条SQL的技术要点如下: DatabaseMetaData接口是描述有关数据库的整体综合信息,由于DatabaseMetaData是接口,所以没有构造方法,故不能使用new来创建DatabaseMetaData对象,但是可以通过Connection的getMetaData()方法创建.例如:DatabaseMetaData md=con.getMetaData(). DatabaseMetaData类的supportsBatchUpdates方法用于判断此数据库是否支持批量更新.其返回…