C O N T E N T S 사용자 정의 오류 메시지 처리 용어 비교 디버깅용 파일 출력 명령 처리기 커서 처리 기본 아키텍처

Slides:



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

1 SQL 정보보호학과 양 계 탁. 2 SQL 개요 SQL 개요 3 Database u 연관된 데이터들의 집합 u 데이터를 쉽게 관리하는 프로그램 종 류종 류 관계형 데이터베이스 객체지향형 데이터베이스 계층형 데이터베이스 네트워크 데이터베이스 데이터를 2 차원적인 테.
Oracle DB 구조 및 트랜잭션 관리 이경화 Database 의 구조 Program Global Area (PGA) Instance Database Buffer Cache Redo Log Buffer Library Cache Shared.
Chapter 04 SQL 고급.
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
SQL 언어 SQL.
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.
19.(코드+년도+월)별,(코드)별,전체총액을 한번에
Perfect! 대용량 데이터베이스 튜닝Ⅱ.
소리가 작으면 이어폰 사용 권장!.
PL/SQL.
C++ Espresso 제1장 기초 사항.
데이터베이스 시스템.
Proc*C 기초 Style System 김도형.
질의어와 SQL 기본 SQL 고급 SQL 데이타의 수정 데이타 정의 언어 내장 SQL
관계 대수와 SQL.
오라클 데이터베이스 성능 튜닝.
Database & Internet Computing Laboratory 한 양 대 학 교
Chapter 5 SQL: 확장된 질의, 주장, 트리거, 뷰.
C#에서 데이터베이스 연동 방법.
제 5 장 인덱스 생성 및 관리.
4장. 관계 대수와 SQL SQL 관계 데이터 모델에서 지원되는 두 가지 정형적인 언어
쉽게 풀어쓴 C언어 Express 제8장 함수 C Express.
SQL-99: 스키마 정의, 기본제약조건, 질의어 충북대학교 구조시스템공학과 시스템공학연구실
JDBC 프로그래밍 이수지 이동주 1.
You YoungSEok 고급 SQL You YoungSEok
SQL 개요 SQL 개요 - SQL은 현재 DBMS 시장에서 관계 DBMS가 압도적인 우위를 차지하는 데 중요한 요인의 하나
데이터베이스 담당교수 신정식 Chapter 4 SQL(1).
Toad for Oracle 설치 방법.
Chapter 01 데이터베이스 시스템.
Supported Protocol 다음의 예문들은 CLP를 사용하는 방법들을 보여줍니다. 명령어들은 Windows의 DB2 명령창 프롬프트에서 실행합니다. 12. CLP 에서 +c 옵션을 이용하면 autocommit 모드가 사용되지 않으므로.
11장. 데이터베이스 서버 구축과 운영.
롯데마트 CRM 데이터 분석 교육 2014년 12월 > RE::VISION 전용준 리비젼컨설팅 대표
데이터 베이스 설계 및 실습 #3 - SQL 함수.
롯데마트 CRM 데이터 분석 교육 2014년 12월 > RE::VISION 전용준 리비젼컨설팅 대표
기초 T-SQL.
SQL 함수 SQL 함수.
트랜잭션과 잠금 트랜잭션 처리 메커니즘을 자세히 이해한다. 트랜잭션의 종류를 파악한다.
Chapter 05 데이터베이스 프로그래밍.
4.2 SQL 개요 SQL 개요 SQL은 IBM 연구소에서 1974년에 System R이라는 관계 DBMS 시제품을 연구할 때 관계 대수와 관계 해석을 기반으로, 집단 함수, 그룹화, 갱신 연산 등을 추가하여 개발된 언어 1986년에 ANSI(미국 표준 기구)에서 SQL.
14 뷰(View) 뷰의 개념 뷰 관리.
Y. Daniel Liang 길준민 · 정재화.
1장. 데이터베이스 시스템 컴퓨터를 사용하여 정보를 수집하고 분석하는데 데이터베이스 기술이 활용되고 있음
16장. 테이블의 변경 새로운 행 삽입 테이블에서 테이블로 행을 복사 행 값의 변경 테이블에서 행 삭제
9장 테이블 생성 및 변경, 삭제하기(DDL).
DP-ORA 쿼리 최적화 가이드 쿼리 최적화 방법 2014년 7월.
SQL.
YOU Youngseok 트랜잭션(Transaction) YOU Youngseok
01 데이터베이스 개론 데이터베이스의 등장 배경 데이터베이스의 발전 과정 데이터베이스의 정의 데이터베이스의 특징
SQL Server 7.0 세미나 (Performance Tuning)
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
Chapter 3: Introduction to SQL
데이터 타입 데이터 타입.
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
5장 이름, 바인딩, 영역(2) 순천향대학교 컴퓨터공학과 하상호.
1장. SELECT 문장을 이용하여 원하는 데이터 가져오기
HTML CSS 자바스크립트 무작정 따라하기
JSP 게시판 구현.
View(뷰) 1 가상 테이블(Virtual Relation)
데이터베이스 (Database) SQL 추가 기능: 주장, 뷰, 프로그래밍 기법 문양세 강원대학교 IT대학 컴퓨터과학전공.
DIAT 스프레드시트 작성방법 한국정보통신진흥협회.
4.DECODE 함수를 이용한 IF 처리의 효율화
06. SQL 명지대학교 ICT 융합대학 김정호.
뇌를 자극하는 Windows Server 장. 데이터베이스 서버.
Stored program 2 장종원
Stored program 장종원
SQL 함수.
Presentation transcript:

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 비교

용어 비교 Data dictionary, Datafiles, Data Blocks 등의 용어가 사용됩니다. System Catalog, Containers, Pages 등의 용어가 사용됩니다. ORACLE DB2 UDB

명령 처리기 sqlplus 를 이용합니다. DB2 CLP 를 이용하여, command와 SQL, 오류 message 등을 확인할 수 있습니다. ORACLE DB2 UDB

기본 아키텍처 ORACLE DB2 UDB

프로세스 모델 ORACLE DB2 UDB

메모리 모델 ORACLE DB2 UDB

관련 파일 ORACLE DB2 UDB

관련 디렉토리 ORACLE DB2 UDB

메타 데이터 SYSIBM SYSCAT SYSSTAT CHAR, VARCHAR2, LONG, NUMBER, DATE, LOB 등이 있습니다. CHAR, VARCHAR, SMALLINT, INT, BIGINT, DEC, FLOAT, DATE, TIME, TIMESTAMP, LOB 등이 있습니다. ORACLE DB2 UDB SYSIBM SYSCAT SYSSTAT

병렬 아키텍처 RAC DPF Shred Disk 구조를 사용합니다. Shared Nothing 구조를 사용하므로 확장성이 좋습니다. ORACLE DB2 UDB RAC DPF

데이터 유형 비교 CHAR, VARCHAR2, LONG, NUMBER, DATE, LOB 등이 있습니다. CHAR, VARCHAR, SMALLINT, INT, BIGINT, DEC, FLOAT, DATE, TIME, TIMESTAMP, LOB 등이 있습니다. ORACLE DB2 UDB

함수 비교 DB2가 지원하는 함수는 다음과 같습니다. ORACLE DB2 UDB ABS ACOS ASCII ASIN ATAN 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 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 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 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_CONTAINER SNAPSHOT_DATABASE SNAPSHOT_DBM SNAPSHOT_DYN_SQL SNAPSHOT_FCM SNAPSHOT_FCMNODE SNAPSHOT_FILEW SNAPSHOT_LOCK SNAPSHOT_LOCKWAIT SNAPSHOT_QUIESCERS SNAPSHOT_RANGES SNAPSHOT_STATEMENT 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

시스템 레지스터리 Special Register Variables 를 이용하여 시스템에 관련된 여러가지 값을 확인할 수 있습니다. ORACLE DB2 UDB

저장 프로시저 CREATE OR REPLACE PROCEDURE 문을 이용하여 생성합니다. CREATE PROCEDURE 문을 이용하여 저장 프로시저를 생성합니다. REPLACE 옵션은 지원하지 않습니다. ORACLE DB2 UDB

사용자 정의 함수 CREATE OR REPLACE FUNCTION 문을 이용하여 생성합니다. CREATE FUNCTION 문을 이용하여 사용자 정의 함수를 생성합니다. REPLACE 옵션은 지원하지 않습니다. ORACLE DB2 UDB

트리거 CREATE OR REPLACE TRIGGER 문을 이용합니다. CREATE TRIGGER 문을 이용하여 트리거를 생성합니다. INSERT, UPDATE, DELETE 트리거는 개별적으로 생성됩니다. ORACLE DB2 UDB

변수 선언 및 할당 변수 이름, 유형, 기본값을 지정합니다. DECLARE 문을 이용하여 변수, 유형, 기본값을 지정합니다. SET 문을 이용하여 값을 할당합니다. ORACLE DB2 UDB

Flow Contol 문 IF, LOOP, WHILE, FOR 문 등을 이용합니다. IF, LOOP, WHILE, REPEAT, FOR 문 등을 이용합니다. ORACLE DB2 UDB

Dynamic SQL DBMS_SQL 팩키지 또는 NATIVE DYNAMIC SQL를 이용합니다. ORACLE DB2 UDB

컨디션 핸들링 EXCEPTION ~ WHEN 문을 이용합니다. DECLARE ~ CONDITION과 HANDLER 문을 이용합니다. ORACLE DB2 UDB

사용자 정의 오류 메시지 처리 RAISE_APPLICATION_ERROR 를 이용하여 사용자가 정의한 오류 메시지를 처리합니다. RAISE_ERROR, SIGNAL, GET DIAGNOSTICS 문을 이용하여 처리합니다. ORACLE DB2 UDB

디버깅용 파일 출력 CREATE PROCEDURE TESTCASE() LANGUAGE SQL BEGIN NOT ATOMIC 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; END FOR; VALUES(PUT_LINE(32000,'end of the program')) INTO V_MSG2; END @

커서 처리 CURSOR~IS 문을 이용하여 선언합니다. DECLARE ~ CURSOR 문을 이용하여 선언합니다. OPEN, FETCH, CLOSE, WHERE CURRENT OF 구문은 유사합니다. ORACLE DB2 UDB

커서 특성 확인하기 %ISOPEN, %NOTFOUND, %FOUND, %ROWCOUNT 등을 이용하여 커서의 특성을 확인합니다. SQLCODE, SQLSTATE, GET DIAGNOSTICS 문을 이용합니다. ORACLE DB2 UDB

Collection nested table과 varrays 를 이용합니다. global temporary table을 이용합니다. 한 세션에서만 사용되며, 세션 종료시 자동적으로 소멸됩니다. ORACLE DB2 UDB

Bulk Collect BULK COLLECT 절을 이용하여 한 개 이상의 행을 FETCH합니다. TEMPORARY TABLE과 SELECT ~ INSERT 문을 이용합니다. ORACLE DB2 UDB

SP에서 Result Set 반환하기 반환 유형이 REF 인 커서를 이용하여 result set을 반환합니다. DYNAMIC RESULT SET 옵션을 이용하여 result set 을 반환합니다. ORACLE DB2 UDB

다른 SP로 Result Set 반환하기 nested table을 이용하여 result set을 다른 SP로 반환합니다. 반환된 result set 은 ASSOCIATE, ALLOCATE 문을 이용하여 처리합니다. ORACLE DB2 UDB

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

계층적 쿼리 CONNECT BY~START WITH 절을 이용합니다. SELECT 문에서 WITH로 정의되는 COMMON TABLE 을 이용합니다. ORACLE DB2 UDB

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

Outer Join 플러스 (+) 기호를 이용하여 outer join 의 기준을 표시합니다. left, right, full outer join 구문을 이용합니다. ORACLE DB2 UDB

DECODE 문 여러가지 조건문을 판별할 때, DECODE 문을 사용합니다. CASE 문을 이용합니다. ORACLE DB2 UDB

반환되는 행의 개수 제한 ROWNUM을 이용하여 반환되는 행의 개수를 제한합니다. FETCH FIRST n ROWS ONLY 구문이나 ROW_NUMBER 함수를 이용합니다. ORACLE DB2 UDB

값을 반환하는 INSERT, UPDATE, DELETE문 RETURNING INTO 구문을 이용합니다. SELECT INTO과 FROM NEW TABLE 구문을 이용합니다. ORACLE DB2 UDB

Dummy Table DUAL 을 이용합니다. SYSIBM.SYSDUMMY1 을 이용합니다. ORACLE DB2 UDB

Date, Time 연산 DATE 유형을 이용하여, 날짜, 시간, 시간 소인을 처리합니다. DATE, TIME, TIMESTAMP 유형을 이용하여, 날짜, 시간, 시간 소인을 처리합니다. ORACLE DB2 UDB

집합 연산자 UNION, UNION ALL, MINUS, INTERSECT 를 지원합니다. UNION, UNION ALL, EXCEPT, EXCEPT ALL, INTERSECT, INTERSECT ALL 을 지원합니다. ORACLE DB2 UDB

OCI 와 CLI 비교 Oracle Call Interface 를 사용하여 C에서 데이터베이스를 액세스합니다. Call Level Interface 를 이용합니다. ORACLE DB2 UDB