static string Table_Name = ""; /// <summary> /// model实体中的字段名相对数据库表添加的字段 /// 如: /// model中一字段名为cm_tableName, /// 其中tableName为数据库表名 /// 则此变量的值为cm_ /// </summary> static string Common_Prefix = ""; /// <summary> /// 泛型获取…
C#中的反射.是C#中特别重要也是特别神奇的特性,对后面学习框架,了解框架的原理.以及自己写框架,都是必不可少的.学习反射的过程中.总给我一种茅塞顿开的感觉,以前不懂的,现在懂了 反射的介绍:https://www.cnblogs.com/Kare/p/4601436.html 我学了反射以后.也想写一个框架..哈哈哈 架构师像我招手 ..... 增加的方法(什么类都可以) 前提:类名和数据库表名一致.属性名和数据库列名一致.类要有无参构造函数. :主键必须为id 自增,(简化) /// <su…
IT咨询顾问:一次吐血的项目救火   年后的一个合作公司上线了一个子业务系统,对接公司内部的单点系统.我收到该公司的技术咨询:项目启动后没有规律的突然无法登录了,重新启动后,登录一断时间后又无法重新登录,对方技术人员一头雾水不知道什么原因,后台日志没有任何错误信息.我临危受命,赶往该项目进行扑火工作,其实本来2天都可以解决的问题,让我花了5天解决.具体原因待我一一解释. 1,未掌握log日志的精髓 log日志的debug,info,error信息乱打,该用debug的用info,该用info的用…
实例1-使用实例-单个语句: ; List<, , }; List<User_info> userInfoList = UserCenterBus.Select_WebSiteBase<User_info>(, , User_info._USER_INFO_, User_info._ID_ + " DESC", out totalCount, m => alist.Contains(m.ID)); base.Response.Write(JsonHe…
生成SQL语句的功能可以算是LinqToDB框架的最后一步.从上一章中我们可以知道处理完表达式树之后,相关生成SQL信息会被保存在一个叫SelectQuery类的实例.有了这个实例我们就可以生成对应的SQL语句.想要了解这一步部分的功能就必须从三个方面入手.一.Linq To SQL的机制原理.二.如何生成SQL语句.三.设置映射结果. 生成映射表达式 对于Linq To SQL的机制原理在前面的章节里面已经讲过了.这里笔者提出来主要目标是明确什么时候触发.下面的代码不是看前面的获得Query<…
SQL Optimizer for SQL Server 帮助提升数据库应用程序性能,最大程度地自动优化你的SQL语句 SQL Optimizer for SQL Server 让 SQL Server DBA或者T-SQL开发人员能够主动地识别潜在的SQL性能问题,通过扫描和分析SQL语句进行人工智能自动SQL优化.Dell SQL Optimizer通过尝试每一种可能来激发数据库内部SQL优化器的潜能,从而达到性能优化的目的,这是数据库内部SQL优化器不能做到的.下面介绍一下这个工具的一些主…
基于Python实现自动拉取Git分支源码自动解析并执行SQL语句 by:授客 QQ:1033553122 1.代码用途 开发过程中,研发人员会提交SQL更新脚本到Git源码库,然后测试负责去拉取这些SQL脚本,并手动在测试环境或其它环境的数据库中执行这些脚本,很麻烦,本代码的用途就是为了替代手工执行的操作 2.测试环境 Win7 64位 Python 3.3.2 git-credential-winstore.exe 下载地址: https://pan.baidu.com/s/1hsehGjU…
话不多说直接上代码,新手上路,高手路过勿喷,请多多指教. /// <summary> /// 等于号 /// </summary> ) + Convert.ToChar() + Convert.ToChar()); /// <summary> /// 条件变量 /// </summary> ) + )); /// <summary> /// 异常信息 /// </summary> private readonly static str…
从 oracle 数据库导数到到 hive 大数据平台,需要按照大数据平台的数据规范,重新生成建表的 SQL 语句,方便其间,写了一个自动生成SQL的存储过程. ① 创建一张表,用来存储源表的结构,以便进行数据处理(可以用临时表,创建表是为了方便核对数据): create table T_P_TABLE_NAME_TEMP ( owner ) not null, table_name ) not null, tab_comments ), column_name ) not null, data…
会不会碰到这样一种情况呢?每次获取数据将数据和历史版本都有一定的差别,然而用ThinkPHP的addAll()函数,却会将已有的数据删掉再重新写入.这明显不是我们想要的.但自己写sql每次几十个字段也是醉了.如何优雅而又轻松地实现sql的自动生成呢?于是有了下面这个方法. /** * [array_to_sql 根据数组key和value拼接成需要的sql] * @param [type] $array [key, value结构数组] * @param string $type [sql类型i…
public static class ExtendedModel { #region 实体类的增删改查 #region 添加 public static string AddStr(this object t) { StringBuilder strSql = new StringBuilder(); StringBuilder strSql1 = new StringBuilder(); StringBuilder strSql2 = new StringBuilder(); FieldIn…
主要参考一下脚本的实现思路: ①创建临时表 ②创建临时表 ③向临时表插入数据 ④删除原表 ⑤临时表改名 /* 为了防止任何可能出现的数据丢失问题,您应该先仔细检查此脚本,然后再在数据库设计器的上下文之外运行此脚本.*/ BEGIN TRANSACTION SET QUOTED_IDENTIFIER ON SET ARITHABORT ON SET NUMERIC_ROUNDABORT OFF SET CONCAT_NULL_YIELDS_NULL ON SET ANSI_NULLS ON SET…
第一步:在pom中添加该插件的配置,我直接把pom贴上来好了 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.…
方法 constructUpdateSQL private static String constructUpdateSQL(String tableName, List<Map<String, Object>> maps, String primaryKeyName) { /*update testMultiUpdateSQL set remark = case id when 1 then '是小明介绍来的' when 2 then '比较有钱' end, realname =…
上图: 选择这个安装,然后重启IDEA,ok.…
SELECT TOP 100 PERCENT --a.id,          CASE WHEN a.colorder = 1 THEN d.name ELSE '' END AS 表名,          CASE WHEN a.colorder = 1 THEN isnull(f.value, '') ELSE '' END AS 表说明,          a.colorder AS 字段序号, a.name AS 字段名, CASE WHEN COLUMNPROPERTY(a.id, …
---------添加索引方法--------- .添加PRIMARY KEY(主键索引) mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) .添加UNIQUE(唯一索引) mysql>ALTER TABLE `table_name` ADD UNIQUE ( `column` ) .添加INDEX(普通索引) mysql>ALTER TABLE `table_name` ADD INDEX index_name (…
import java.io.File; import java.io.FileOutputStream; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.List; import org.hibernate.hql.internal.ast.SqlGenerator; import org.slf4j.Logger; import org.slf4j.LoggerFactory; publ…
大写的UUID: SELECT UPPER(UUID()); 小写的UUID: SELECT LOWER(UUID()); SELECT UUID(); 去掉横杠的UUID: SELECT REPLACE(UUID(), '-', '');  …
去出差的时候应客户要求要要将Excel 文件内的数据批量导入到数据库中,而且有各种不同种类的表格,如果每一个表格多对应一个数据表的话, 按照正常的方法应该是创建数据表,创建数据库中映射的数据模型,然后数据访问层,业务层,在为每个表创建一个展示页面......这样一套下来花费 的时间多不说在以后客户又有新的表格需要导入那么是不是也要按照三层的步骤一步一步的来做呢?答案是否定的.这里我向大家介绍一个比较灵活 方式来完成所有的功能,在拓展性上也很好,可以移植到任何程序中使用: 不多废话直接看程序,程序…
在EF中,使用linq进行分页是很方便的,假如我们有一个EMP表,结构如下: public class Emp { [Key] public Guid No { get; set; } public int Age { get; set; } [Required] [StringLength(50)] public string Name { get; set; } } 如果我们进行分页的话,一般使用Skip和Take方法,这里一行最简单的代码如下: mContext.Emp.OrderBy(e…
大家好,我是轩脉刃. 我们写业务的时候和db接触是少不了的,那么要生成model也是少不了的,如何自动生成model,想着要给hade框架增加个这样的命令. 看了下网上的几个开源项目,最终聚焦在两个项目中: https://github.com/go-gorm/gen https://github.com/xxjwxc/gormt gormt的gui是非常强大的,看文档都支持终端gui和windows的gui.但是gormt是一个工具,无法在另外一个项目中引入. 但是gen项目是gorm官方推出…
在开发的过程中,我们为了节约时间,往往会将大量重复机械的代码封装,考虑代码的复用性,这样我们可以节约很多时间来做别的事情.最近跳槽到一节webform开发的公司,主要是开发自己公司用的ERP.开始因为一些诱惑进来的,现在感觉其实有些后悔放弃了很好的学习ABP以及新知识点像一些很新颖的前端框架进这个公司.但现在跳槽也不是一个明智之举,不好意思扯远了,既来之则安之.最近写了个小工具.主要针对webform开发过程中一些重复的代码处理. github地址:https://github.com/Jimm…
   懒人小工具2:T4自动生成Model,Insert,Select,Delete以及导出Excel的方法    github地址:https://github.com/Jimmey-Jiang/JWorkHelper 在开发的过程中,我们为了节约时间,往往会将大量重复机械的代码封装,考虑代码的复用性,这样我们可以节约很多时间来做别的事情.最近跳槽到一节webform开发的公司,主要是开发自己公司用的ERP.开始因为一些诱惑进来的,现在感觉其实有些后悔放弃了很好的学习ABP以及新知识点像一些很…
  public class BuildSqlTool { public static string GetCreateTableSql(object t) { //CREATE TABLE "StructureView2"("Id" INTEGER PRIMARY KEY AUTOINCREMENT , "IdxNo" VARCHAR, "Name" VARCHAR, "Content" VARCHAR,…
在近一段日子里,进入了新的项目组,由于项目需要,经常要将一些Excel表中的数据导入数据库中,以前并没有过多的接触过数据导入与数据处理,对于我来说比较痛苦,今天下午花了几个小时处理数据,但是同事给我提供了更加简单的数据处理方法,让我不得不服,5分钟就能弄好.于是开始反思,是不是有更好的数据处理方法,而不是手动去一条条修改. 一:多行操作手写SQL同事提供的方法是将Excel表中某一列数据Ctrl+C.Ctrl+V到NotePad++中,然后使用快捷键选中所有数据行,多行一起手写sql语句.(暂时…
别人设计的ID类型为varchar(32),使用Guid.NewGuid().ToString()自动生成ID值,本来大小32位妥妥的.可C#在生成的ID值中自动生成了几根小横杠,你说是不是讨嫌. 岂止讨嫌,简直讨厌.那怎样干掉其中的横杠......看下面!!! string ID= Guid.NewGuid().ToString("N"); //去NM的短横杠…
背景 在 "Groovy元编程简明教程" 一文中,简明地介绍了 Groovy 元编程的特性. 那么,元编程可以应用哪些场合呢?元编程通常可以用来自动生成一些相似的模板代码. 在 "使用Groovy+Spock构建可配置的订单搜索接口测试用例集" 一文中,谈到了如何将搜索接口的测试用例配置化. 不过,那还只是初级配置化, 含有浓浓的 Java 对象味了, 测试代码与测试用例集合的配置实际上并没有分离,整个测试方法看起来不够清晰. 那么,用元编程的方法,会是怎样呢 ?…
原创/朱季谦 我接触工作流引擎Activiti已有两年之久,但一直都只限于熟悉其各类API的使用,对底层的实现,则存在较大的盲区. Activiti这个开源框架在设计上,其实存在不少值得学习和思考的地方,例如,框架用到以命令模式.责任链模式.模板模式等优秀的设计模式来进行框架的设计. 故而,是值得好好研究下Activiti这个框架的底层实现. 我在工作当中现阶段用的比较多是Activiti6.0版本,本文就以这个版本来展开分析. 在使用Activiti工作流引擎过程中,让我比较好奇的一个地方,是…
分页的写法 自从用上了Orm,分页这种事就是腰不酸腿不痛了.不过有时候想用纯粹的ado.net来操作,希望返回的数据是原生的DataTable或DbDataReader类似的东西,故研究下怎么生成分页的SQL语句. 平时接触的数据库有sql2000-2008,Oracle,SQLite . 分页逻辑,Oracle和SQLite相对好写,就SQL事多,Sql2000下只能用top,排序2次,而Sql2005+就可以使用ROW_NUMBER()分析函数了,据说Sql2012对分页又有了改进,暂时用不…