数据治理中Oracle SQL和存储过程的数据血缘分析   数据治理中的一个重要基础工作是分析组织中数据的血缘关系.有了完整的数据血缘关系,我们可以用它进行数据溯源.表和字段变更的影响分析.数据合规性的证明.数据质量的检查等. 分析数据血缘的方法主要分为四类 自动解析 系统跟踪 机器学习 人工收集 自动解析主要是利用工具解析 SQL 语句.存储过程和 ETL等文件. 本文以 Oracle 为例,来说明如何分析 SQL 和存储过程中的数据血缘. 产生数据血缘的 SQL 语句 SELECT INSE…
<Oracle dbms_lock.sleep()存储过程使用技巧>-场景-分析-实例 摘要:今天是2014年3月10日,北京,雾霾,下午组织相关部门开会.会议的结尾一名开发工程师找到了我,向我请教了一下“如何延迟SQL语句的执行时间”为了是测试项目的一个功能输出.在我的建议下使用了dbms_lock.sleep()存储过程来完成了这个实现.我在会议之后体会到Oracle的package的应用场景非常重要.往往新入职场的DBA技术不错,会的东西也不少,就是不太了解什么技术应用在什么场景下,使之…
测试用的示例java代码: package com.zifeiy.test.normal; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException…
存储过程的功能非常强大,在某种程度上甚至可以替代业务逻辑层, 接下来就一个小例子来说明,用存储过程插入或更新语句. 1.数据库表结构 所用数据库为Sql Server2008. 2.创建存储过程 (1)实现功能:1)有相同的数据,直接返回(返回值:0): 2)有主键相同,但是数据不同的数据,进行更新处理(返回值:2): 3)没有数据,进行插入数据处理(返回值:1). 根据不同的情况设置存储过程的返回值,调用存储过程的时候,根据不同的返回值,进行相关的处理. (2)下面编码只是实现的基本的功能,具…
如何操做不在同一个数据库中的数据操作: 一.对于SQL server来讲:  1.采用创建链接服务器的方式:    (1).创建链接服务器       exec sp_addlinkedserver   '要创建的链接服务器的本地名称', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '          sp_addlinkedserver :创建一个链接服务器(相当于oracle中的本地注册)         exec sp_addlinkedsrvlogin  '创建的链接…
1.准备表数据 select * from emp10; create sequence seq_eseq increment start maxvalue ; --得到序列的SQL语句 select seq_eseq.nextval from sys.dual; --删除序列的SQL DROP SEQUENCE seq_eseq: create table emp10( empno ) primary key, ename ) not null, job ) not null, mgr ),…
1.生成1至10记录 select rownum from dual connect 结果: 12345678910 2.生成最近12个月记录 ), 'yyyyMM') time from dual connect 结果: 201805201806201807201808201809201810201811201812201901201902201903201904 一个用途:查询最近12个月数据,如果没有数据,也要返回记录,可以用上面sql语句作为主表左关联业务表.…
SqlParameter[] param = { new SqlParameter("@shopId",shopId), new SqlParameter("@newShopStr",newShopStr), new SqlParameter("@userId",userId), ), ) }; 注意:output参数需要定义大小,否则只能获取到一个字符…
1.导入别的表 insert into EMPI_IDENTIFY select id,empiid, name||':' ||idcardno,'accidcardno','' from empi_main where empi_state ='正常'; insert into EMPI_IDENTIFY select sys_guid(),empiid, name||':' ||tel,'acctel','' from empi_main where empi_state ='正常' and…
对于重复的或结构化的数据,保存到数据库中是很好的选择,比如联系人信息.这里假设你对SQL数据库大体上了解然后帮助你学习Android上的SQLite数据库.在Android数据库上需要用到的API可以在android.database.sqlite包中找到. 定义Schema和Contract SQL数据库中一个主要的准测是schema:一个正式的数据库如何组织的声明.这个schema和用来创建数据库的SQL声明是对应的.你会发现创建一个同样的类很有用,叫做contract类,它明确指名了sch…