IBM Software Group © 2004 IBM Corporation DB2 Post Support Team DB2 UDB Guide for Experienced Oracle User.

Slides:



Advertisements
Similar presentations
1 SQL 정보보호학과 양 계 탁. 2 SQL 개요 SQL 개요 3 Database u 연관된 데이터들의 집합 u 데이터를 쉽게 관리하는 프로그램 종 류종 류 관계형 데이터베이스 객체지향형 데이터베이스 계층형 데이터베이스 네트워크 데이터베이스 데이터를 2 차원적인 테.
Advertisements

Chapter 04 SQL 고급.
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
SQL 언어 SQL.
PowerBuilder Stored Procedure DW
Vision System Lab, Sang-Hun Han
Allow reverse scans allow reverse scnas. allow reverse scans allow reverse scnas.
DB Injection과 대응방안 nwkim.
DB2 Information Management DB2 UDB CLP Command Summary.
C++ Tutorial 1 서강대학교 데이터베이스 연구실.
19.(코드+년도+월)별,(코드)별,전체총액을 한번에
Perfect! 대용량 데이터베이스 튜닝Ⅱ.
You YOungseok 데이터베이스 테이블 및 인덱스 You YOungseok.
PL/SQL.
Database Laboratory, Hong Ik University
Proc*C 기초 Style System 김도형.
질의어와 SQL 기본 SQL 고급 SQL 데이타의 수정 데이타 정의 언어 내장 SQL
관계 대수와 SQL.
오라클 데이터베이스 성능 튜닝.
Database & Internet Computing Laboratory 한 양 대 학 교
Chapter 5 SQL: 확장된 질의, 주장, 트리거, 뷰.
제 5 장 인덱스 생성 및 관리.
C O N T E N T S 사용자 정의 오류 메시지 처리 용어 비교 디버깅용 파일 출력 명령 처리기 커서 처리 기본 아키텍처
06 SQL 함수 SQL 함수의 개념 문자 함수 숫자 함수 날짜 함수 데이터 타입의 변환 일반 함수.
4장. 관계 대수와 SQL SQL 관계 데이터 모델에서 지원되는 두 가지 정형적인 언어
컴퓨터 프로그래밍 기초 [Final] 기말고사
You YoungSEok 고급 SQL You YoungSEok
SQL 개요 SQL 개요 - SQL은 현재 DBMS 시장에서 관계 DBMS가 압도적인 우위를 차지하는 데 중요한 요인의 하나
데이터베이스 담당교수 신정식 Chapter 4 SQL(1).
Chapter 01 데이터베이스 시스템.
Supported Protocol 다음의 예문들은 CLP를 사용하는 방법들을 보여줍니다. 명령어들은 Windows의 DB2 명령창 프롬프트에서 실행합니다. 12. CLP 에서 +c 옵션을 이용하면 autocommit 모드가 사용되지 않으므로.
11장. 데이터베이스 서버 구축과 운영.
데이터 베이스 설계 및 실습 #3 - SQL 함수.
PL/SQL 문법 부 프로그램 (프로시저, 함수) 패키지&트리거
기초 T-SQL.
테이블 : 데이터베이스를 구성하는 요소로 같은 성격에 정보의 집합체. 레코드 : 하나의 정보를 가지고 있는 컬럼의 집합체
SQL 함수 SQL 함수.
Chapter 05 데이터베이스 프로그래밍.
4.2 SQL 개요 SQL 개요 SQL은 IBM 연구소에서 1974년에 System R이라는 관계 DBMS 시제품을 연구할 때 관계 대수와 관계 해석을 기반으로, 집단 함수, 그룹화, 갱신 연산 등을 추가하여 개발된 언어 1986년에 ANSI(미국 표준 기구)에서 SQL.
6장 그룹 함수.
07 그룹 함수 그룹 함수의 개념 그룹 함수의 종류 데이터 그룹 생성 HAVING 절.
How to use OLEDB using ATL
Heesang kim PL/SQL 3 Heesang kim.
SELECT empno, ename, job, sal, dname FROM emp, dept
1장. 데이터베이스 시스템 컴퓨터를 사용하여 정보를 수집하고 분석하는데 데이터베이스 기술이 활용되고 있음
9장 테이블 생성 및 변경, 삭제하기(DDL).
DP-ORA 쿼리 최적화 가이드 쿼리 최적화 방법 2014년 7월.
SQL.
YOU Youngseok 트랜잭션(Transaction) YOU Youngseok
01 데이터베이스 개론 데이터베이스의 등장 배경 데이터베이스의 발전 과정 데이터베이스의 정의 데이터베이스의 특징
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
KIM HEESANG PL/SQL 2 KIM HEESANG
C#.
데이터 타입 데이터 타입.
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
1장. SELECT 문장을 이용하여 원하는 데이터 가져오기
데이터베이스 (Database) SQL 추가 기능: 주장, 뷰, 프로그래밍 기법 문양세 강원대학교 IT대학 컴퓨터과학전공.
DIAT 스프레드시트 작성방법 한국정보통신진흥협회.
4.DECODE 함수를 이용한 IF 처리의 효율화
06. SQL 명지대학교 ICT 융합대학 김정호.
SQL Server 2000 세미나 View, SP &Trigger
14 뷰(View) 뷰의 개념 뷰 관리.
뇌를 자극하는 Windows Server 장. 데이터베이스 서버.
Stored program 2 장종원
Stored program 장종원
7장 테이블 조인하기.
SQL 함수.
maria db JDBC PROGRAMMING 5
 6장. SQL 쿼리.
제 5 장 MariaDB인덱스 생성 및 관리.
Presentation transcript:

IBM Software Group © 2004 IBM Corporation DB2 Post Support Team DB2 UDB Guide for Experienced Oracle User

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 2 C O N T E N T S 용어 비교 명령 처리기 기본 아키텍처 프로세스 모델 메모리 모델 관련 파일 관련 디렉토리 메타 데이터 병렬 아키텍처 데이터 유형 비교 함수 비교 시스템 레지스터리 저장 프로시저 사용자 정의 함수 트리거 변수 선언 및 할당 Flow Control 문 Dynamic SQL 컨디션 핸들링 사용자 정의 오류 메시지 처리 디버깅용 파일 출력 커서 처리 커서 특성 확인하기 Collection Bulk Collect SP 에서 Result Set 반환하기 다른 SP 로 Result Set 반환하기 Local Function 계층적 쿼리 데이터 유형 자동 변환 Outer Join DECODE 문 반환되는 행의 개수 제한 값을 반환하는 INSERT, UPDATE, DELETE 문 Dummy Table Date, Time 연산 집합 연산자 OCI 와 CLI 비교

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 3 용어 비교 Data dictionary, Datafiles, Data Blocks 등의 용어가 사용됩니다. System Catalog, Containers, Pages 등의 용어가 사용됩니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 4 명령 처리기 DB2 CLP 를 이용하여, command 와 SQL, 오류 message 등을 확인할 수 있 습니다. ORACLE DB2 UDB sqlplus 를 이용합니다.

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 5 기본 아키텍처 ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 6 프로세스 모델 ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 7 메모리 모델 ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 8 관련 파일 ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 9 관련 디렉토리 ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 10 메타 데이터 CHAR, VARCHAR, SMALLINT, INT, BIGINT, DEC, FLOAT, DATE, TIME, TIMESTAMP, LOB 등이 있습니다. ORACLE DB2 UDB CHAR, VARCHAR2, LONG, NUMBER, DATE, LOB 등이 있습니다. SYSCAT SYSSTAT SYSIBM

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 11 병렬 아키텍처 Shared Nothing 구조를 사용하므로 확장성이 좋습니다. ORACLE DB2 UDB Shred Disk 구조를 사용합니다. DPFRAC

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 12 데이터 유형 비교 CHAR, VARCHAR, SMALLINT, INT, BIGINT, DEC, FLOAT, DATE, TIME, TIMESTAMP, LOB 등이 있습니다. ORACLE DB2 UDB CHAR, VARCHAR2, LONG, NUMBER, DATE, LOB 등이 있습니다.

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 13 함수 비교 DB2 가 지원하는 함수는 다음과 같습니다. ORACLE DB2 UDB ABS ACOS ASCII ASIN ATAN ATAN2 ATANH AVG BIGINT BLOB CEIL CHAR CHR CLOB CONCAT CORR COS COSH COT COUNT COUNT_BIG COVAR DATE DAY DAYNAME DAYOFWEEK DAYOFWEEK_ISO DAYOFYEAR DAYS DB_PARTITIONS DBCLOB DBPARTITIONNUM DEC HEALTH_CONT_HI_HIS HEALTH_CONT_INFO HEALTH_DB_HI HEALTH_DB_HI_HIS HEALTH_DB_INFO HEALTH_DBM_HI HEALTH_DBM_HI_HIS HEALTH_DBM_INFO HEALTH_TBS_HI HEALTH_TBS_HI_HIS HEALTH_TBS_INFO HEX HOUR IDENTITY_VAL_LOCAL INSERT INT JULIAN_DAY LCASE LOWER LEFT LENGTH LN LOCATE LOG LOG10 LONG_VARCHAR LONG_VARGRAPHIC LTRIM MAX MICROSECOND MIDNIGHT_SECONDS MIN MINUTE DECRYPT_BIN DECRYPT_CHAR DEGREES DEREF DIFFERENCE DIGITS DLCOMMENT DLLINKTYPE DLNEWCOPY DLPREVIOUSCOPY DLREPLACECONTENT DLURLCOMPLETE DLURLCOMPLETEONLY DLURLCOMPLETEWRITE DLURLPATH DLURLPATHONLY DLURLPATHWRITE DLURLSCHEME DLURLSERVER DLVALUE DOUBLE ENCRYPT EVENT_MON_STATE EXP FLOAT FLOOR GENERATE_UNIQUE GET_ROUTINE_SAR GETHINT GRAPHIC GROUPING HASHEDVALUE HEALTH_CONT_HI MOD MONTH MONTHNAME MQPUBLISH MQREAD MQREADALL MQREADALLCLOB MQREADCLOB MQRECEIVE MQRECEIVEALL MQRECEIVEALLCLOB MQRECEIVECLOB MQSEND MQSUBSCRIBE MQUNSUBSCRIBE MULTIPLY_ALT NULLIF POSSTR POWER PUT_ROUTINE_SAR QUARTER RADIANS RAISE_ERROR RAND REAL REC2XML REGR_AVGX REGR_AVGY REGR_COUNT REGR_ICPT REGR_R2 REGR_SLOPE REBIND_ROUTINE_PACKAGE REGR_SXX REGR_SXY REGR_SYY REPEAT REPLACE RIGHT ROUND RTRIM SECOND SIGN SIN SINH SMALLINT SNAPSHOT_AGENT SNAPSHOT_APPL SNAPSHOT_APPL_INFO SNAPSHOT_BP SNAPSHOT_CONTAINE R SNAPSHOT_DATABASE SNAPSHOT_DBM SNAPSHOT_DYN_SQL SNAPSHOT_FCM SNAPSHOT_FCMNODE SNAPSHOT_FILEW SNAPSHOT_LOCK SNAPSHOT_LOCKWAIT SNAPSHOT_QUIESCER S SNAPSHOT_RANGES SNAPSHOT_STATEMEN T SNAPSHOT_TBS_CFG SOUNDEX SPACE SQLCACHE_SNAPSHOT SQRT STDDEV SUBSTR SUM TABLE_NAME TABLE_SCHEMA TAN TANH TIME TIMESTAMP TIMESTAMP_FORMAT TIMESTAMP_ISO TIMESTAMPDIFF TO_CHAR TO_DATE TRANSLATE TRUNCATE 또는 TRUNC TYPE_ID TYPE_NAME TYPE_SCHEMA UCASE UCASE 또는 UPPER VALUE VARCHAR VARCHAR_FORMAT VARGRAPHIC VAR WEEK WEEK_ISO YEAR

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 14 시스템 레지스터리 Special Register Variables 를 이용하여 시스템에 관련된 여러가지 값을 확 인할 수 있습니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 15 저장 프로시저 CREATE OR REPLACE PROCEDURE 문을 이용하여 생성합니다. CREATE PROCEDURE 문을 이용하여 저장 프로시저를 생성합니다. REPLACE 옵션은 지원하지 않습니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 16 사용자 정의 함수 CREATE OR REPLACE FUNCTION 문을 이용하여 생성합니다. CREATE FUNCTION 문을 이용하여 사용자 정의 함수를 생성합니다. REPLACE 옵션은 지원하지 않습니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 17 트리거 CREATE OR REPLACE TRIGGER 문을 이용합니다. CREATE TRIGGER 문을 이용하여 트리거를 생성합니다. INSERT, UPDATE, DELETE 트리거는 개별적으로 생성됩니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 18 변수 선언 및 할당 변수 이름, 유형, 기본값을 지정합니다. DECLARE 문을 이용하여 변수, 유형, 기본값을 지정합니다. SET 문을 이용 하여 값을 할당합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 19 Flow Contol 문 IF, LOOP, WHILE, FOR 문 등을 이용합니다. IF, LOOP, WHILE, REPEAT, FOR 문 등을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 20 Dynamic SQL DBMS_SQL 팩키지 또는 NATIVE DYNAMIC SQL 를 이용합니다. NATIVE DYNAMIC SQL 을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 21 컨디션 핸들링 EXCEPTION ~ WHEN 문을 이용합니다. DECLARE ~ CONDITION 과 HANDLER 문을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 22 사용자 정의 오류 메시지 처리 RAISE_APPLICATION_ERROR 를 이용하여 사용자가 정의한 오류 메시 지를 처리합니다. RAISE_ERROR, SIGNAL, GET DIAGNOSTICS 문을 이용하여 처리합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 23 디버깅용 파일 출력 dbms_out.put.put_line 함수를 이용합니다. PUT_LINE 사용자 정의 함수를 이용합니다. ORACLE DB2 UDB CREATE PROCEDURE TESTCASE() LANGUAGE SQL BEGIN NOT ATOMIC DECLARE V_DEPTNO SMALLINT; DECLARE V_DEPTNAME VARCHAR(20); DECLARE V_NUM SMALLINT DEFAULT 0; DECLARE V_MSG1 VARCHAR(4000); DECLARE V_MSG2 VARCHAR(1); SET V_NUM=2000; SET V_MSG1='debugging start'; VALUES(PUT_LINE(V_NUM,V_MSG1)) INTO V_MSG2; VALUES(PUT_LINE(SMALLINT(2),'this is no2')) INTO V_MSG2; VALUES(PUT_LINE(3)) INTO V_MSG2; VALUES(PUT_LINE('##number4##')) INTO V_MSG2; SET V_NUM = 0; FOR V_C1_REC AS C1 CURSOR FOR SELECT DEPTNUMB, DEPTNAME FROM ORG; DO SET V_DEPTNO = v_C1_REC.DEPTNUMB; SET V_DEPTNAME = v_C1_REC.DEPTNAME; SET V_NUM = V_NUM + 1; SET V_MSG1 ='DEPTNO=' || CHAR(V_DEPTNO)||','||V_DEPTNAME; VALUES(PUT_LINE(V_NUM,V_MSG1)) INTO V_MSG2; END FOR; VALUES(PUT_LINE(32000,'end of the program')) INTO V_MSG2;

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 24 커서 처리 CURSOR~IS 문을 이용하여 선언합니다. DECLARE ~ CURSOR 문을 이용하여 선언합니다. OPEN, FETCH, CLOSE, WHERE CURRENT OF 구문은 유사합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 25 커서 특성 확인하기 %ISOPEN, %NOTFOUND, %FOUND, %ROWCOUNT 등을 이용하여 커 서의 특성을 확인합니다. SQLCODE, SQLSTATE, GET DIAGNOSTICS 문을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 26 Collection nested table 과 varrays 를 이용합니다. global temporary table 을 이용합니다. 한 세션에서만 사용되며, 세션 종료시 자동적으로 소멸됩니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 27 Bulk Collect BULK COLLECT 절을 이용하여 한 개 이상의 행을 FETCH 합니다. TEMPORARY TABLE 과 SELECT ~ INSERT 문을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 28 SP 에서 Result Set 반환하기 반환 유형이 REF 인 커서를 이용하여 result set 을 반환합니다. DYNAMIC RESULT SET 옵션을 이용하여 result set 을 반환합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 29 다른 SP 로 Result Set 반환하기 nested table 을 이용하여 result set 을 다른 SP 로 반환합니다. 반환된 result set 은 ASSOCIATE, ALLOCATE 문을 이용하여 처리합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 30 Local Function 특정 SP 내에서만 참조되는 함수를 local function 이라고 합니다. DB2 에서는 Local Function 이 없으므로 UDF 를 사용하기 전에 SP 외부에서 미리 생성해 두어야 합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 31 계층적 쿼리 CONNECT BY~START WITH 절을 이용합니다. SELECT 문에서 WITH 로 정의되는 COMMON TABLE 을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 32 데이터 유형 자동 변환 필요시 자동적으로 데이터 유형의 변환이 발생합니다. 명시적인 데이터 타입이 맞지 않을 경우에는 조작을 허용하지 않습니다. 필 요시, 명시적인 데이터 유형 변환 함수를 사용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 33 Outer Join 플러스 (+) 기호를 이용하여 outer join 의 기준을 표시합니다. left, right, full outer join 구문을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 34 DECODE 문 여러가지 조건문을 판별할 때, DECODE 문을 사용합니다. CASE 문을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 35 반환되는 행의 개수 제한 ROWNUM 을 이용하여 반환되는 행의 개수를 제한합니다. FETCH FIRST n ROWS ONLY 구문이나 ROW_NUMBER 함수를 이용합니 다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 36 값을 반환하는 INSERT, UPDATE, DELETE 문 RETURNING INTO 구문을 이용합니다. SELECT INTO 과 FROM NEW TABLE 구문을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 37 Dummy Table DUAL 을 이용합니다. SYSIBM.SYSDUMMY1 을 이용합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 38 Date, Time 연산 DATE 유형을 이용하여, 날짜, 시간, 시간 소인을 처리합니다. DATE, TIME, TIMESTAMP 유형을 이용하여, 날짜, 시간, 시간 소인을 처리 합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 39 집합 연산자 UNION, UNION ALL, MINUS, INTERSECT 를 지원합니다. UNION, UNION ALL, EXCEPT, EXCEPT ALL, INTERSECT, INTERSECT ALL 을 지원합니다. ORACLE DB2 UDB

DB2 Guide for Experienced Oracle Users © 2004 IBM Corporation DB2 UDB 40 OCI 와 CLI 비교 Oracle Call Interface 를 사용하여 C 에서 데이터베이스를 액세스합니다. Call Level Interface 를 이용합니다. ORACLE DB2 UDB