logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

프로젝트에서 강한 오라클 PL / SQL 프로그래밍

프로젝트에서 강한 오라클 PL / SQL 프로그래밍

송현호, 장정수 (지은이)
비팬북스
40,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
36,000원 -10% 0원
2,000원
34,000원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

프로젝트에서 강한 오라클 PL / SQL 프로그래밍
eBook 미리보기

책 정보

· 제목 : 프로젝트에서 강한 오라클 PL / SQL 프로그래밍 
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 데이터베이스 프로그래밍 > SQL
· ISBN : 9788994797205
· 쪽수 : 678쪽
· 출판일 : 2015-04-28

책 소개

오라클 PL/SQL 베스트 프랙티스. DBA, 개발자, 튜너들이 이 책을 읽으면 PL/SQL을 제대로 배울 수 있다. 1부에서는 각종 예제로 PL/SQL을 배울 수 있고, 2부에서는 성능 개선과 운영 안정성 사례를 배울 수 있다.

목차

1부 예제로 배우는 PL/SQL

1장 PL/SQL이란?
PL/SQL이란?
PL/SQL의 필요성
PL/SQL의 장점
PL/SQL 아키텍처(Architecture)

2장 테스트 환경 구성(1부)

3장 PL/SQL 블록 구조
익명 블록
주석

4장 DBMS_OUTPUT 패키지

5장 식별자와 변수
PL/SQL 문자 집합
식별자 규칙
변수 선언
변수 범위와 가시성
문자열 안에 작은 따옴표 사용하기

6장 데이터 타입
스칼라 타입
조합 타입
LOB 타입
% 타입
사용자 정의 서브타입
데이터 타입 간 형 변환

7장 테이터 조작
DML 조작
커밋
롤백
세이브포인트
ROLLBACK TO SAVEPOINT
SET TRANSACTION

8장 NULL 제어

9장 프로시저
프로시저 생성
입/출력 매개변수
프로시저 실행 방법
프로시저 제거
프로시저 Invalid 시 재컴파일(Re-Compile) 방법

10장 함수
함수 생성
Deterministic 함수 생성
함수 실행
함수 제거
프로시저와 함수의 차이

11장 패키지
패키지 생성
전역 변수 선언 시 유의사항
프로시저 및 패키지 변경 시 주의 사항
패키지 컴파일

12장 IN OUT 모드-NOCOPY: call by reference
NOCOPY란
NOCOPY 유의점

13장 권한 관리
권한 관리
권한 취소
권한 부여 시 주의사항
조회 스키마 관리

14장 제어 구문
IF 문
CASE 문
GOTO 및 레이블
Loop
중첩 Loop
While Loop
For Loop
커서(Cursor) For Loop

15장 내장 함수
타입 변환 함수
숫자 표기 형식
날짜 표기 형식
문자열 관련 함수
수치 함수
날짜 함수

16장 커서 관리
명시적 커서와 암시적 커서
암시적 커서
명시적 커서
For Loop와 커서를 활용한 Update 문 튜닝

17장 자율 트랜잭션
자율 트랜잭션의 특징
자율 트랜잭션 생성
자율 트랜잭션 활용 방안
자율 트랜잭션으로 인한 데드락
자율 트랜잭션 선언 위치

18장 예외 처리
예외 처리 개요
컴파일 경고(Compile-Time Warnings)
예외 처리 문법
예외 처리 종류
선행 정의 예외
내부 정의 예외-EXCEPTION_INIT Pragma
사용자 정의 예외(User-Defined Exceptions)-RAISE
사용자 정의 예외(User-Defined Exceptions)-RAISE_APPLICATION_ERROR
에러 발생한 부분 건너뛰어 계속 실행하기(9i 이하)
DML 에러 로깅 기능 활용 (10g R2 이상)

19장 REF 커서
REF 커서 타입
REF 커서 사용 예
REF 커서 제약
바인드 변수를 활용한 REF 커서 사용
REF 커서의 장점

20장 컬렉션
Nested Table 컬렉션
Varray 컬렉션
Index-by Table 컬렉션
컬렉션 함수
컬렉션 타입 정의 및 초기화
컬렉션 확장(EXTEND)
컬렉션 삭제 및 제거
컬렉션 예외 처리
Nested Table 컬렉션 사용 예
Varray 컬렉션 사용 예
Index by Table 컬렉션 사용 예

21장 Bulk 처리와 ForAll
Bulk Collect
Fetch 사이즈에 따른 PGA 변화량
ForAll이란?
ForAll을 이용한 Delete
ForAll을 이용한 Update
ForAll을 이용한 Insert
BULK COLLECT~LIMIT과 ForAll
For와 ForAll의 성능 차이
ForAll을 이용한 Merge
ForAll 예외 처리 - SAVE EXCEPTIONS
Returning 절
ForAll과 INDICES OF 절
ForAll과 VALUES OF

22장 Table 함수
Table 함수
Pipelined Table 함수
SQL 커서를 이용한 Table 함수
컬렉션을 이용한 Table 함수
Table 함수와 조인
멀티 칼럼을 반환하는 스칼라 서브쿼리

23장 호출자 권한
DML 비교
DDL 비교

24장 동적 SQL
NDS를 이용한 동적 SQL
DBMS_SQL을 이용한 동적 SQL
동적SQL을 위한 오라클 11g의 새로운 기능들

25장 성능 진단 패키지(DBMS_PROFILER)
DBMS_PROFILER 패키지
DBMS_TRACE 패키지
DBMS_HPROF 패키지

26장 세션 모니터링을 위한 DBMS_APPLICATION_INFO 패키지
DBMS_APPLICATION_INFO 패키지 함수
JDBC 내 DBMS_APPLICATION_INFO 패키지 사용

27장 트리거
트리거 생성
트리거 종류
DDL 트리거
Instead-Of 트리거

28장 병렬 처리
함수 병렬 처리
DBMS_JOB을 이용한 매뉴얼한 병렬 처리
DBMS_PARALLEL_EXECUTE 패키지

29장 새로운 기능들(11g New Features)
CONTINUE 문
Result Cache
네이티브 컴파일러
PL/SQL 안의 시퀀스 사용

2부 성능 개선과 운영 안정성 사례로 배우는 PL/SQL

30장 테스트 환경 구성(2부)
샘플 스키마 생성
테스트 테이블 생성
성능 분석을 위한 패키지 생성
성능 관련 중요한 세 가지 지표

31장 SQL VS PL/SQL(1)-PL/SQL 안에서의 SQL 성능

32장 SQL VS PL/SQL(2)-SQL 안에서의 SQL 성능

33장 함수를 최소한으로 호출하라

34장 OPEN CURSOR 대신 FOR LOOP를 사용하라

35장 LOOP 안의 SQL은 한번 더 생각하라(1)

36장 LOOP 안의 SQL은 한번 더 생각하라(2)

37장 불필요한 시퀀스 사용을 제거하라

38장 건바이건 Commit을 최소화하라

39장 Insert & Update를 Merge로 변경하라

40장 EXCEPTION 처리 시 WHEN OTHERS 사용에 주의하라

41장 반복 Insert를 BULK Insert로 변경하라(1)

42장 반복 Insert를 BULK Insert로 변경하라(2)

43장 반복 Delete를 BULK Delete로 변경하라

44장 반복 Insert 시 APPEND_VALUES를 고려하라

45장 하드 파싱(Hard Parsing)을 피하라(1)

46장 하드 파싱(Hard Parsing)을 피하라(2)

47장 동시성을 고려하라(1)

48장 동시성을 고려하라(2)

49장 동시성을 고려하라(3)

50장 자율 트랜잭션에 대해 이해하라(1)

51장 자율 트랜잭션에 대해 이해하라(2)

52장 Table 함수의 조인 순서를 주의하라

53장 멀티 칼럼, 멀티 행을 반환하는 스칼라 서브쿼리

54장 COUNT(*) 사용에 주의하라

55장 트리거 사용 시 에러를 피하라

56장 Client-Side 프로그래밍 대신 패키지를 사용하라(1)

57장 Client-Side 프로그래밍 대신 패키지를 사용하라(2)

58장 프로시저 대신 패키지를 사용하라

59장 패키지에 전역(GLOBAL) 변수 사용을 최소화하라

60장 DBMS_AQ(ADVANCED QUEUE)를 이용하면 데이터 전송이 편리해진다

61장 Database Link 호출을 최소화하라

부록

부록 A 자바 JDK 설치
가. 윈도우즈 설치
나. Linux 설치

부록 B 오라클 제공 패키지
DBMS_UTILITY
DBMS_LOCK
DBMS_PIPE
DBMS_RANDOM
DBMS_LOB
UTL_RAW
UTL_METADATA
UTL_FILE
DBMS_CRYPTO
DBMS_JOB
DBMS_XPLAN

찾아보기

저자소개

송현호 (옮긴이)    정보 더보기
SK C&C의 인프라 조직에서 회사 생활을 시작해 지금까지 DBA 업무를 수행하고 있다. SK 그룹 사내 및 외적으로 다양한 업무의 데이터베이스를 운영 및 구축, 튜닝했으며, 현재는 SKT 주 과금시스템 및 관련 시스템의 운영 관리를 맡고 있다. 월간 마이크로소프트웨어에 기고한 이력이 있으며, 최근에는 IT 시스템을 Open source로 재구축하는 것에 관심을 갖고 공부를 하고 있는 중이다.
펼치기
장정수 (지은이)    정보 더보기
컴퓨터공학을 전공하였으며, 2001년 SK C&C에 입사하여 셀파소프트를 거쳐 현재 엑시엄에서 활동 중입니다. 메인프레임 시스템 엔지니어로부터 시작하였으나 DBA로 전향하여 SK 텔레콤의 주요 데이터베이스 운영 및 성능 개선 업무를 수행하였으며, 이 후 LG이노텍, SK하이닉스, AK몰, 철도공사 등 다양한 고객사에서 DB 성능 개선 및 SQL, PL/SQL 튜닝 컨설팅을 담당하였습니다. 오라클 10g OCP 및 SQLP, DAP, 리눅스 마스터 등 다양한 자격증도 보유하고 있습니다.
펼치기

책속에서

암묵적으로 형 변환이 일어날 경우 운영 중에 프로그램의 성능 저하 또는 에러가 발생할 수 있으므로 각 변수의 형 변환이 필요할 경우에는 반드시 명시적으로 기술되도록 노력해야 합니다. 또한 변수 선언 시 데이터 타입이 서로 간에 정확히 일치하도록 선언해야 합니다.


커밋(Commit)이 되지 않으면 락이 해제되지 않기 때문에 커밋을 자주 해야 성능상 유리하다고 믿고 있는 개발자분들이 많이 있습니다. ( … 중략 … ) 매번 커밋을 하면 오히려 성능과 운영 안정성에 문제가 발생할 수 있습니다.


오라클 데이터베이스 버전이 10g 이상이라면, 데이터를 추출하기 위한 Fetch Call을 최소화하기 위해 Open-Fetch-Close 절 보다는 For Loop를 사용하는 것이 성능에 유리합니다.


이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책