三范式
整理Normalization
powerdesigner 画ER图
powerdesigner 画ER图 ER图 即为 CDM图 - Conceptual Data Modal CDM可以转换成PDM、OOM、LDM等图,具体请详查
Oracle分析函数之开窗函数over()详解
分析函数是什么? 分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计值。
ETL架构中的38个子系统
--By Ralph Kimball, 2004年4月 建立一个成功的数据仓库系统,依靠的是最佳实践而不是直觉。
INFORMATICA 开发规范
转自:https://www.cnblogs.com/junwangzhe/p/7064154.html
PLSQL语法
Procedural Language和SQL的结合体。通过增加变量、控制语句,使我们可以写些逻辑更加复杂的数据库操作
PL/SQL基本结构---PLSQL复合类型---表类型变量table
PL/SQL基本结构---PLSQL复合类型---表类型变量table
3NF浅谈BI领域的数据模型设计
转:https://blog.csdn.net/tianpeixun/article/details/78285613
Cursor游标,Ref Cursor
http://hi.baidu.com/edeed/item/e6ba1fddb94bb0f793a97486PLSQL中显示Cursor、隐示Cursor、动态Ref Cursor区别 今天简单的总结一下PL/SQL中cursor(光标/游标)的用法。[@more@]相信不少做开发或维护的DBA在找工作的时候,遇到过类似的面视问题:请简单的描述一下光标的类型,说一下普通光标和REF光标之间的区别,以及什么时候该正确应用哪一个? 这 个题目,我着实难住了不少人,其实他们在具体开发的时候,也还是比较能够把握正确的光标的使用的,但就是说不出来,当然了,这与大家自身的沟流交通能力是 有关系的。有的人不善于说,
PLSQL questions
here are some general questionsPL/SQL Questions: 1. Describe the difference between a procedure, function and anonymous pl/sql block.A function must return a value while a procedure doesn’t have to. Functions can be called from SQL.anonymous pl/sql block begins with a DECLARE statement. [@more@] 2. Describe the use of %ROWTYPE and %TYPE in PL/SQL %TYPE associates a variable with a single column type. %ROWTYPE associates a variable with an entire table row. % TYPE is used to declare a field wi
Logical DBA, DA Data Architect
Logical DBA 不同与Physical DBA. 有些像DA的角色,下面是一些工作内容:[@more@]Base Activities:Review database Code as part of data object review Define entities, attributes and relationships Involved in process design Review/show plans Review explains Perform initial performance review. Perform OS scripting Perform database scripting. Assist in debugging of scripts. Assist in monitoring on server platforms. Assist in application support through code implementation support. Assist in app
EXECUTE IMMEDIATE into的使用
Use "EXECUTE IMMEDIATE into" to analyze which tables being updated[@more@]DECLAREv_table_name varchar2(30);v_count number;v_rows number;v_sql_statement VARCHAR2(300);CURSOR c1 IS select table_name from dba_tab_columns where owner='Schema_owner' and column_name='CREATE_TIMESTAMP' order by 1;BEGINOPEN c1; -- open the cursor before fetchingLOOPFETCH c1 INTO v_table_name;EXIT WHEN c1%NOTFOUND;v_sql_statement := 'select count(*) from Schema_owner .' || v_table_name || ' where trunc(create_t
DBMS_LOB.READ access CLOB xml
DBMS_LOB.READ, REGEXP_REPLACE 读取CLOB里的信息.[@more@]set serveroutput on;SET LINESIZE 150spool /tmp/info_cache_report.csv;DECLAREv_clob CLOB;v_data VARCHAR2(1000);v_buffer INTEGER;v_audit_string VARCHAR2(1000);v_audit_date DATE;v_audit_version VARCHAR2(1000);v_trade_type VARCHAR2(1000);v_sub_type VARCHAR2(1000);BEGINDBMS_OUTPUT.PUT_LINE('QUEUE_info_ID,info_IDENTIFIER,AUDIT_VERSION,TRADE_TYPE,EXTRACTED_IND,COB_DATE,AUDIT_TIMESTAMP,ENTRY_TIMESTAMP,info_SIZE,DELAY_SECONDS');for i in (select * fro
Using XML Parser for PL/SQL
在PLSQL里直接调用oracle的XML Parser来对xml进行操作,这比较好,以后可以参考。http://download-uk.oracle.com/docs/cd/B14504_01/dl/web/B12099_01/adx28ppl.htm[@more@]
Oracle Date Functions
Oracle Date FunctionsVersion 10.2 Have you seen our new Functions page? If not ... Click Here ... for instant access to all Oracle functionshttp://www.psoug.org/reference/date_func.html[@more@]Oracle Date FunctionsVersion 10.2 Have you seen our new Functions page? If not ... Click Here ... for instant access to all Oracle functions DateCurrent DateCURRENT_DATESYSDATESELECT TO_CHAR(CURRENT_DATE, 'DD-MON-YYYY HH:MI:SS') FROM dual;SELECT TO_CHAR(SYSDATE, 'DD-MON-YYYY HH:MI:SS') FROM dual;FormatsD
Oracle SQL性能优化
Oracle SQL性能优化 1、用EXISTS替代IN,NOT EXISTS替代NOT IN: 在子查询中,NOT 在许多基于基础表的查询中,为了满足一个条件,往往需要对另一个表进行联接.在这种情况下, 使用EXISTS(或NOT EXISTS)通常将提高查询的效率。[@more@] SELECT * FROM EMP (基础表) WHERE EMPNO > 0 AND EXISTS (SELECT ‘X' FROM DEPT WHERE DEPT.DEPTNO = EMP.DEPTNO AND LOC = ‘MELB') 2、用Where子句替换HAVING子句: 避免使用HAVING子句, HAVING 只会在检索出所有记录之后才对结果集进行过滤。 这个处理需
Oracle触发器
是特定事件出现的时候,自动执行的代码块。类似于存储过程,但是用户不能直接调用他们。[@more@]功能: 1、 允许/限制对表的修改 2、 自动生成派生列,比如自增字段 3、 强制数据一致性 4、 提供审计和日志记录 5、 防止无效的事务处理 6、 启用复杂的业务逻辑 开始 create trigger biufer_employees_department_id before insert or update of department_id on employees referencing old as old_value new as new_value for each row when (new_value
oracle临时表-优化查询速度
http://tech.it168.com/db/o/2006-08-18/200608180829007.shtml目前所有使用oracle作为数据库支撑平台的应用,大部分数据量比较庞大的系统,即表的数据量一般情况下都是在百万级以上的数据量。[@more@] 当然在oracle中创建分区是一种不错的选择,但是当你发现你的应用有多张表关联的时候,并且这些表大部分都是比较庞大,而你关联的时候发现其中的某一张或者某几张表关联之后得到的结果集非常小并且查询得到这个结果集的速度非常快,那么这个时候我考虑在oracle中创建“临时表”。 我对临时表的理解:在oracle中创建一张表,这个表不
数据结构知识(转)
由于查找运算的使用频率很高,几乎在任何一个计算机系统软件和应用软件中都会涉及到,所以当问题所涉及的数据量相当大时,查找方法的效率就显得格外重要。在一些实时查询系统中尤其如此。因此,本章将系统地讨论各种查找方法,并通过对它们的效率分析来比较各种查找方法的优劣。[@more@]查找的基本概念1、查找表和查找 一般,假定被查找的对象是由一组结点组成的表(Table)或文件,而每个结点则由若干个数据项组成。并假设每个结点都有一个能惟一标识该结点的关键字。 查找(Searching)的定义是:给定一个值K,在含有n个结点的表中找出关键
二分查找算法
二分查找1、二分查找(Binary Search) 二分查找又称折半查找,它是一种效率较高的查找方法。 二分查找要求:线性表是有序表,即表中结点按关键字有序,并且要用向量作为表的存储结构。不妨设有序表是递增有序的。[@more@]2、二分查找的基本思想 二分查找的基本思想是:(设R[low..high]是当前的查找区间)(1)首先确定该区间的中点位置: (2)然后将待查的K值与R[mid].key比较:若相等,则查找成功并返回此位置,否则须确定新的查找区间,继续二分查找,具体方法如下: ①若R[mid].key>K,则由表的有序性可知R[mid..n].keys均大