批量生成sql语句,难得
在工作我们常常要批量生成sql文件,因为业务部门经常给我们的是excel文件,根据我的经验,推荐两种批量生成sql文件方式
1.excel批量生成sql ,sql语句如下
INSERT INTO TableName(ID,USERNAME,MANAGERID2) VALUES('"&列名&"','"&列名&"','"&列名&"');
但是这个里面会有问题如果是有时间类型呢 ,就会出现数字,那么怎么解决呢 ,1.首先把时间列设置文本格式,2.把生成的sql放到桌面新建的文本里面
具体详细可见下面图片
含时间类型sql如下,记住sql
="INSERT INTO TableName(m_no,m_date1,m_date_open,m_date_close) VALUES('"& A2 &"',to_date('"& B2 &"','yyyy-mm-dd'),to_date('"& C2 &"','yyyy-mm-dd'),to_date('"& D2 &"','yyyy-mm-dd'));"
同理,update语句如下
="update m_store set 字段1='" & B2 & "',字段2='" & B2*1 & "' where 字段三='" & B3 & "';"
2.第二种批量生成sql的方法
sql生成sql语句,为什么呢,因为存在跨库的原因,如果没有link就需要,执行sql文件,主要适应的条件是跨库
sql语句的写法如下:
SELECT 'update ds36.occ_file set occud10 = 2 , occud12 = to_number('||''''||a2||''''||') where occ01 ='||''''||a1||''''||''||';',a3 FROM (
SELECT nvl(EXTRACTVALUE(xmltype(fi.fieldvalues),'/CreditProcessForm/Textbox54'),EXTRACTVALUE(xmltype(fi.fieldvalues),'/CreditProcessForm/Textbox24')) a1 ,EXTRACTVALUE(xmltype(fi.fieldvalues),'/CreditProcessForm/Textbox75') a2,EXTRACTVALUE(xmltype(fi.fieldvalues),'/CreditProcessForm/SerialNumber') a3
from ProcessInstance pi inner join ProcessContext pc on pc.containeroid=pi.oid
inner join LocalRelevantData lrd on lrd.containeroid=pc.oid
inner join FormInstance fi on fi.oid=lrd.valueoid where pi.currentstate = 3 AND pi.serialnumber LIKE '%PKG15783854472041_clone%'
--标识符 PKG15783854472041_clone
)
批量生成sql语句后,只需要导出excel,sql语句,放到文本里面就会非常的方便
3.最终我们都要执行sql文件,怎么创建sql文件呢,很简单,新建文本文件,把sql语句放进去,把后缀txt,改成.sql文件
在plsql里面new -->Command Window
记得把sql文件路径拷下来,到时候执行时候@D:\1.sql,回车即可执行
批量生成sql语句,难得的更多相关文章
- python批量生成SQL语句
1,首先写一条能运行成功插入SQL的语句 INSERT INTO sign_guest(realname,phone,email,sign,event_id)VALUES("jack&quo ...
- 将表里的数据批量生成INSERT语句的存储过程 增强版
将表里的数据批量生成INSERT语句的存储过程 增强版 有时候,我们需要将某个表里的数据全部或者根据查询条件导出来,迁移到另一个相同结构的库中 目前SQL Server里面是没有相关的工具根据查询条件 ...
- 将表里的数据批量生成INSERT语句的存储过程
有时候,我们需要将某个表里的数据全部导出来,迁移到另一个相同结构的库中,这里可以采取一个简便的方法,通过一个存储过程批量导出数据并生成SQL语句,非常方便.存储过程如下: )) as begin de ...
- ASP.NET通过反射生成sql语句
最近对接一个接口,需要通过xml序列化成实体后添加额外信息后批量插入数据库,需要手动拼sql.因为涉及多张表,拼凑很麻烦而且容易出错,所以写了两个工具方法来生成sql,先写到博客里面,以便以后不时之需 ...
- 自由导入你的增量数据-根据条件将sqlserver表批量生成INSERT语句的存储过程实施笔记
文章标题: 自由导入你的增量数据-根据条件将sqlserver表批量生成INSERT语句的存储过程增强版 关键字 : mssql-scripter,SQL Server 文章分类: 技术分享 创建时间 ...
- 带参方法的执行:普通方法的查询,可为空方法的查询。批量处理SQL语句。
普通方法的查询: @Override public List<Map<String, Object>> selectSpentAmount(Integer MAT_TYPE_, ...
- 将表里的数据批量生成INSERT语句的存储过程 继续增强版
文章继续 桦仔兄的文章 将表里的数据批量生成INSERT语句的存储过程 增强版 继续增强... 本来打算将该内容回复于桦仔兄的文章的下面的,但是不知为何博客园就是不让提交!.... 所以在这里贴出来吧 ...
- 利用反射自动生成SQL语句(仿Linq)
转:http://www.cnblogs.com/the7stroke/archive/2012/04/22/2465597.html using System; using System.Colle ...
- Excel数据生成Sql语句的方法
选中想要生成的列,套用表格格式,选中表包含标题的选项确定,然后在最右边的一列第二行处,点击函数功能,选择CONCATENATE,在文本里输入想要的结构即可 代码如下 复制代码 ,=CONCATENA ...
随机推荐
- 前端每日实战:125# 视频演示如何用纯 CSS 创作一个失落的人独自行走的动画
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/MqpOdR/ 可交互视频 此视频是 ...
- js移动端滑倒顶部加载历史消息解决方案!
最近做了一个语音直播聊天的项目,有一个功能是当没有直播时,进入房间可以查看历史消息,滑动到顶部加载之前的历史消息,我用jquery scroll事件,来判断是否滚动到顶部,问题来了: 首先触发请求事件 ...
- js事件委托target
**看一看,瞧一瞧!** 话说要谈事件委托和target.那我们首先来看看什么是事件.话说什么是事件呢?一般的解释是比较重大.对一定的人群会产生一定影响的事情.而在JavaScript中就不是这样了, ...
- Javascript中String()和new String()的区别——JS的包装对象
最近在看Symbol不能使用new操作符,然后类比到Number,String,Boolean,因为它们同属于基本类型,但是有有所差异:Number,String,Boolean是可以使用new操作符 ...
- DEX文件解析---2、Dex文件checksum(校验和)解析
一.checksum介绍 checksum(校验和)是DEX位于文件头部的一个信息,用来判断DEX文件是否损坏或者被篡改,它位于头部的0x08偏移地址处,占用4个字节,采用小端序存储. ...
- ES6、ES7、ES8语法总结
ES6 1. var let const let,const具有块级作用域,不具有变量提升 const 用于不能被重新赋值的变量 2. 箭头函数 我们经常要给回调函数给一个父级的this 常用办法就是 ...
- 谈谈SQL优化
写SQL是学习数据库必须掌握的非常重要的技能之一.在学习过程当中,我们会尝试写各种各样满足需求的SQL语句.在实际项目中,优秀的SQL语句和普通的SQL语句的执行速度差别非常大.对于一个数据量很大的系 ...
- webpack资料,还需整理
参考地址: https://github.com/ruanyf/webpack-demos#demo01-entry-file-source http://www.jianshu.com/p/4df9 ...
- 关于BitmapImage EndInit()时报值不在范围内的异常
值不在预期的范围内.ArgumentException 在 System.Windows.Media.ColorContext.GetColorContextsHelper(GetColorConte ...
- 使用JDBC工具类模拟登陆验证-Java(新手)
模拟登陆验证: package JdbcDome; import java.sql.Connection; import java.sql.PreparedStatement; import java ...