간편결제, 신용카드 청구할인
네이버페이 1%
(네이버페이 결제 시 적립)
NH(올원페이)카드 12% (22,180원)
(3만원 이상 결제/최대 1만원 할인)
북피니언 롯데카드 30% (17,640원)
(최대할인 3만원 / 3만원 이상 결제)
하나SK 북&카드 30% (17,640원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (20,160원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (22,680원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (23,440원)
(최대할인 3만원 / 3만원 이상 결제)
Close

개발자를 위한 PL/SQL 프로그래밍 : PL/SQL의 효율적 활용을 위한 풍부한 예제 제공!

2013년 9월 9일 이후 누적수치입니다.

판매지수 392
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
  • 저 : 나장근
  • 출판사 : 제이펍
  • 발행 : 2017년 06월 30일
  • 쪽수 : 460
  • 제품구성 : 전1권
  • ISBN : 9791185890913
정가

28,000원

  • 25,200 (10%할인)

    1,400P (5%적립)

배송정보
주문수량
감소 증가
  • 이벤트/기획전

  • 연관도서

  • 사은품(3)

책소개

높은 생산성을 내기 위한 프로그래머의 필수 선택, PL/SQL!

이 책은 오라클 PL/SQL 프로그래밍 영역에서 입문자부터 중급자까지의 개발자에게 필요한 주제들을 거의 빠짐없이 담고 있다. 또한, PL/SQL 자체를 배우고 활용하기 위한 지식뿐만 아니라 자바나 .NET과 같은 언어에서 PL/SQL을 응용하거나 자바 언어로 저장 프로시저를 작성하는 데 필요한 주제까지 포함하고 있다. 덕분에 프로그래머가 PL/SQL 프로그램을 개발하고 이를 응용 프로그램에서 활용하는 과정 전체를 익히는 데 적합하다. 한마디로, 개발자 관점에서 DB 애플리케이션을 개발하는 데 필요한 주제를 폭넓게 다루고 있어서 이 책 한 권이면 PL/SQL의 다양한 기술을 습득하기에 충분할 것이다.

출판사 서평

오라클 PL/SQL 프로그래밍 철저 해부!
높은 생산성을 내기 위한 프로그래머의 필수 선택, PL/SQL!


흔히 오라클 하면 SQL만을 떠올리지만, 이 SQL만으로는 부족하다 느껴질 때가 많지 않으신가요? 바로 이런 아쉬움을 메울 수 있는 수준 높지만 읽기 쉽고, 친절하나 결코 가볍지 않은, 세심하고 꼼꼼한 PL/SQL 책이 출간되었습니다!

개발자로 오랫동안 일해 온 저자가 개발자 관점에서 DB 응용프로그램을 개발하는 데 필요한 주제를 폭넓게 다루었고, 입문부터 중급 수준까지의 독자를 모두 아우를 수 있도록 꼭 필요한 내용들만 수록하여 어느 정도 수준에 이를 때까지 여러분들이 필요로 할 PL/SQL의 다양한 기술들을 습득하기에 이 한 권으로 충분할 것입니다.

SQL만 잘 아는 프로그래머보다는 PL/SQL까지도 잘 아는 프로그래머가 훨씬 더 높은 생산성을 낼 수 있습니다. SQL로 구현하기 어렵거나 불가능한 것들을 PL/SQL로 능숙하게 구현할 수 있게 된다면, 여러분은 최고의 생산성을 내는 유능한 프로그래머가 될 수 있을 것입니다. 이 책과 더불어 한 단계 더 수준 높은 프로그래머로 거듭날 기회를 잡으세요!

목차

PART I PL/SQL 시작하기

CHAPTER 1 예제로 시작하기

1.1 오라클 scott 예제 스키마
1.2 예제 프로그램
1.2.1 익명 PL/SQL 예제
1.2.2 저장 함수 예제
1.2.3 저장 프로시저 예제

CHAPTER 2 PL/SQL 개요

2.1 PL/SQL의 개념
2.2 PL/SQL의 주요 특징
2.3 PL/SQL과 SQL의 비교
2.4 PL/SQL로 쉽게 할 수 있는 것들과 하기 어려운 것들
2.4.1 쉽게 할 수 있는 것들
2.4.2 하기 어려운 것들
2.5 PL/SQL의 작성과 실행 절차
2.6 PL/SQL의 실행 구조

CHAPTER 3 PL/SQL 프로그래밍 준비하기

3.1 오라클의 세 가지 에디션
3.2 오라클 데이터베이스 설치
3.2.1 사용할 오라클 버전의 선택
3.2.2 오라클 데이터베이스 설치 절차
3.2.3 오라클 버전 12c 사용 시의 주의사항
3.3 PL/SQL 실행 환경
3.4 SQL*Plus 설정

PART II PL/SQL의 기초

CHAPTER 4 PL/SQL 프로그램의 기본 구조

4.1 블록 구조
4.2 문장
4.3 주석
4.4 저장 서브프로그램과 익명 PL/SQL

CHAPTER 5 구분자와 식별자

5.1 구분자
5.2 식별자
5.2.1 일반 사용자 정의 식별자
5.2.2 큰따옴표를 사용한 사용자 정의 식별자
5.3 식별자의 유효 범위

CHAPTER 6 데이터 타입

6.1 문자형 데이터 타입
6.2 수치형 SQL 데이터 타입
6.3 LONG과 LONG RAW 데이터 타입
6.4 PL/SQL 전용 데이터 타입
6.4.1 PL/SQL 전용 수치형 데이터 타입
6.4.2 BOOLEAN 데이터 타입
6.5 사용자 정의 서브타입
6.6 객체 타입
6.7 오라클 내장 데이터 타입의 최대 크기 차이
6.8 앵커(%)를 사용한 데이터 타입 지정
6.8.1 %TYPE
6.8.2 %ROWTYPE 72
6.9 스칼라 데이터 타입과 컴포지트 데이터 타입

CHAPTER 7 변수와 상수 그리고 리터럴

7.1 변수
7.2 상수
7.3 리터럴
7.3.1 문자형 리터럴
7.3.2 수치형 리터럴
7.3.3 날짜형 리터럴

CHAPTER 8 표현식

8.1 연산자와 피연산자
8.2 연산자 우선순위
8.3 연산자의 기능 설명
8.4 연산자의 종류
8.4.1 산술 연산자
8.4.2 논리 연산자
8.4.3 Short-Circuit Evaluation
8.4.4 연결 연산자
8.4.5 비교 연산자
8.4.6 BOOLEAN 표현식
8.4.7 CASE 표현식
8.5 PL/SQL에서 내장 SQL 함수의 사용

CHAPTER 9 SQL 실행

9.1 SELECT문의 사용
9.1.1 기본 사용법
9.1.2 PL/SQL 입력 변수의 사용
9.2 INSERT문의 사용
9.3 UPDATE문의 사용
9.4 MERGE문의 사용
9.5 DELETE문의 사용
9.6 시퀀스 사용
9.7 DML문의 결괏값을 PL/SQL 변수로 반환하는 방법
9.8 트랜잭션 제어
9.8.1 COMMIT
9.8.2 묵시적 COMMIT
9.8.3 ROLLBACK
9.8.4 SAVEPOINT
9.8.5 묵시적 ROLLBACK
9.8.6 SET TRANSACTION
9.9 CLOB 사용하기

PART III 절차형 데이터베이스 언어로서의 PL/SQL

CHAPTER 10 제어문

10.1 제어문의 종류
10.2 조건 분기문
10.2.1 IF문
10.2.2 CASE문
10.3 무조건 분기문
10.4 레이블
10.5 순환문
10.5.1 기본 LOOP문
10.5.2 탈출문
10.5.3 WHILE LOOP문
10.5.4 FOR LOOP문
10.5.5 LOOP문 내에서의 흐름 변경
10.6 제어 구조의 중첩

CHAPTER 11 컬렉션

11.1 컬렉션 타입의 종류
11.2 Associative Array
11.3 VARRAY(Variable-Size Array)
11.4 Nested Table
11.5 컬렉션 생성자
11.6 컬렉션 연산
11.6.1 컬렉션 변수 간의 할당
11.6.2 컬렉션 비교
11.6.3 컬렉션 메소드
11.7 다차원 컬렉션
11.8 배열 처리
11.8.1 SELECT문에서의 배열 처리
11.8.2 DML문에서의 배열 처리
11.8.3 FORALL문과 예외 처리

CHAPTER 12 레코드

12.1 레코드 사용
12.2 레코드를 SQL에 사용하기
12.3 레코드 변수에 값 할당
12.4 레코드와 컬렉션의 혼합
12.5 레코드를 SELECT, INSERT, UPDATE문에 사용할 때의 제약 사항

CHAPTER 13 커서

13.1 묵시적 커서와 명시적 커서
13.1.1 묵시적 커서
13.1.2 명시적 커서
13.2 커서 FOR LOOP
13.2.1 묵시적 커서 FOR LOOP
13.2.2 명시적 커서 FOR LOOP
13.3 커서 속성
13.3.1 명시적 커서 속성
13.3.2 묵시적 커서 속성
13.4 커서 칼럼의 앨리어스 사용
13.5 커서 매개변수
13.6 커서 변수(REF CURSOR)
13.7 SELECT FOR UPDATE

CHAPTER 14 동적 SQL

14.1 EXECUTE IMMEDIATE문을 사용하는 방법
14.1.1 쿼리 결과를 변수에 저장
14.1.2 바인드 변수의 사용
14.1.3 바인드 변수의 모드
14.1.4 바인드 변수 플레이스 홀더의 이름과 순서
14.2 커서 변수를 사용하는 방법
14.3 DBMS_SQL 내장 패키지를 사용하는 방법
14.4 동적 PL/SQL

CHAPTER 15 예외 처리

15.1 예외 처리 방법
15.2 예외의 이름
15.2.1 표준 예외명
15.2.2 사용자 정의 예외명
15.3 사용자가 예외를 발생시키기
15.3.1 RAISE문 사용
15.3.2 RAISE_APPLICATION_ERROR
15.4 예외를 특정 오류 번호와 연결하기
15.5 예외의 전파
15.6 예외 처리기에서의 오류 조회 함수
15.6.1 FORMAT_ERROR_BACKTRACE
15.6.2 FORMAT_ERROR_STACK
15.6.3 FORMAT_CALL_STACK
15.7 예외 처리에서 주로 하는 작업
15.7.1 트랜잭션 마무리
15.7.2 변수나 반환값 지정
15.7.3 디버깅 정보 출력
15.7.4 오류 무시

PART IV 저장 서브프로그램

CHAPTER 16 저장 서브프로그램 개요
16.1 저장 서브프로그램을 사용하는 이유
16.2 저장 서브프로그램의 종류
16.3 프로그램을 서버에 저장하고 공유하기
16.4 저장 서브프로그램의 컴파일과 실행 방법
16.4.1 컴파일하기
16.4.2 컴파일 오류 조회
16.4.3 저장 서브프로그램 실행하기
16.5 서버에 저장되지 않는 서브프로그램

CHAPTER 17 저장 함수

17.1 함수의 기본 구조
17.2 함수의 매개변수
17.3 함수의 선언부
17.4 함수의 반환값
17.5 저장 함수의 사용
17.6 저장 함수 사용의 제약 사항

CHAPTER 18 저장 프로시저

18.1 프로시저의 매개변수
18.2 프로시저의 선언부
18.3 저장 프로시저의 사용

CHAPTER 19 패키지

19.1 패키지 구조
19.2 패키지 변수
19.3 패키지 서브프로그램
19.4 패키지 커서
19.5 SERIALLY_REUSABLE 패키지

CHAPTER 20 서브프로그램의 다양한 기능들

20.1 매개변수
20.1.1 매개변수의 선언과 사용
20.1.2 IN/OUT 매개변수
20.1.3 매개변수의 기본값
20.1.4 매개변수의 값 지정 방법: 위치에 의한 지정과 이름에 의한 지정
20.1.5 OUT 매개변수 변경의 원자성 보장
20.1.6 매개변수의 전달 방식: 값에 의한 호출과 참조에 의한 호출
20.1.7 NOCOPY 매개변수
20.2 재귀 호출
20.3 서브프로그램 정의의 중첩
20.4 중복 정의
20.4.1 중복 정의의 사용
20.4.2 중복 정의의 제약
20.5 전방 선언
20.6 자치 트랜잭션
20.7 함수 속성 DETERMINISTIC, PARALLEL_ENABLE, RESULT_CACHE
20.7.1 DETERMINISTIC
20.7.2 PARALLEL_ENABLE
20.7.3 RESULT_CACHE
20.8 권한 모델: 정의자 권한과 실행자 권한
20.8.1 정의자 권한
20.8.2 실행자 권한
20.8.3 ROLE을 통해 부여 받은 권한: SQL은 실행되는데 서브프로그램에 포함시키면 오류 발생

CHAPTER 21 트리거

21.1 트리거의 종류
21.2 DML 트리거의 구조
21.3 트리거의 호출 순서
21.4 트리거의 제약 사항

CHAPTER 22 객체 타입

22.1 객체 타입 개념
22.2 객체 타입 속성
22.3 객체 타입의 메소드
22.3.1 멤버 메소드
22.3.2 정적 메소드
22.3.3 생성자 메소드
22.4 객체 타입의 상속
22.5 메소드의 재정의
22.6 메소드의 중복 정의
22.7 REF 데이터 타입
22.8 객체를 테이블에 저장하는 방법
22.9 슈퍼타입과 서브타입 간의 변환
22.10 객체 타입의 진화
22.10.1 메소드의 추가 또는 삭제
22.10.2 속성의 추가, 삭제, 변경
22.10.3 타입의 FINAL과 NOT FINAL의 변경

CHAPTER 23 저장 서브프로그램 관리

23.1 변경과 삭제
23.2 딕셔너리에서 저장 서브프로그램 조회하기
23.3 저장 서브프로그램 권한 관리

CHAPTER 24 외부 프로그램에서 저장 서브프로그램 호출

24.1 자바 프로그램에서 저장 서브프로그램 호출
24.1.1 자바에서 저장 함수 호출
24.1.2 자바에서 저장 프로시저 호출
24.2 C# 프로그램에서 저장 서브프로그램 호출
24.2.1 C#에서 오라클을 사용하기 위한 준비
24.2.2 C#에서 저장 함수 호출
24.2.3 C#에서 저장 프로시저 호출

CHAPTER 25 자바 저장 프로시저

25.1 자바 저장 프로시저의 작성 방법과 절차
25.1.1 자바 클래스 파일을 DB에 로드
25.1.2 자바 소스 파일을 DB에 로드
25.1.3 자바 소스를 DB에 직접 생성
25.2 오라클의 SQL 데이터 타입과 자바 타입 간의 매핑
25.3 자바 저장 프로시저에서 자신을 실행한 오라클에 접속하기
25.4 오라클에서 지원하지 않는 기능을 자바로 구현하기

본문중에서

그렇다고 해서 SQL이 만능인 것은 아니다. SQL만으로 업무 로직을 처리하기에는 너무 복잡하거나 심지어는 불가능한 경우도 있다. 실제 업무 처리 로직에는 절차적인 요소가 매우 많다. )L/SQL이 없던 시절에는 이런 절차적인 요소를 코볼(COBOL)과 같은 언어가 담당했다. 메인프레임에서 실행되는 코볼 프로그램에 데이터베이스와의 인터페이스를 위한 임베디드 SQL(Embedded SQL) 처리 기능을 추가하여 절차적인 업무들을 처리했다. 과거에는 대규모 비즈니스 업무 처리에 사용된 언어가 거의 코볼 일색이었기 때문에 어쩌면 이것이 자연스러웠을 것이다.
(/ p.2)

데이터 타입의 지정 방법 중에서 특이하면서도 매우 유용한 형식이 있는데, 변수나 칼럼, 테이블, 커서 등의 기존 선언을 참조하여 데이터 타입을 지정하는 방법이다. 오라클에서 공식적으로 사용하는 용어는 아니지만, 보통 이를 앵커(Anchor)라고 부른다. 이 방법을 사용하면 식별자의 선언문이 간단해지고, 차후에 참조되는 타입이 변경되더라도 이를 참조하는 쪽은 소스 코드를 수정하지 않아도 된다는 장점이 있다. 앵커는 다음의 두 가지 형식으로 사용이 가능하다.
(/ p.71)

트랜잭션은 세션별로 독립적으로 유지된다. 두 사람이 별도로 각자의 SQL*)lus를 사용하여 접속했다면 이는 서로 다른 세션이며(물론, 한 사람이 두 개의 SQL*)lus를 실행하는 경우도 마찬가지로 서로가 다른 세션이다), 따라서 둘은 별도의 독립적인 트랜잭션이다. 서로 다른 트랜잭션은 독립적이므로, 한 세션(트랜잭션)이 커밋을 하더라도 다른 세션(트랜잭션)의 변경 사항을 커밋하는 일은 없다. 이는 바로 다음에 설명할 롤백의 경우에도 마찬가지다.
(/ p.122)

)L/SQL은 절차형 데이터베이스 언어다. 절차형 언어로서 갖춰야 하는 기본적인 요소는 제어문이다. 절차적 처리를 효율적으로 실시할 수 있도록 지원되는 부가 기능에는 컬렉션과 레코드가 있다. 절차형 언어에서 데이터베이스와 상호 작용하기 위해서 커서가 기본적으로 지원되고, 정적 커서(Static Cursor)의 제약 사항을 보완하기 위해서 동적 SQL(Dynamic SQL)이 지원된다. 요즘 대부분의 언어는 절차 처리에서 예외 발생 시 이를 스마트하게 처리할 수 있도록 하는 예외 처리를 지원하는데, 오라클 )L/SQL 역시 예외 처리를 지원한다.
(/ p.134)

)L/SQL의 가장 큰 장점 중의 하나는 데이터 처리 로직을 데이터베이스에 저장할 수 있다는 것이다. 데이터베이스가 단순히 데이터만을 저장하는 것에서 나아가 데이터 처리를 위한 비즈니스 로직까지 저장할 수 있게 된 것이다. 기존 DBMS의 역할에서 상당히 진보한 것이라 할 수 있다. 데이터 처리 로직을 데이터베이스에 저장할 수 있으면 재사용성, 유지보수성, 모듈화, 표준화, 성능 등의 측면에서 여러 가지 장점이 생긴다.
(/ p.268)

자바(Java)는 플랫폼 독립적인 언어로, 거의 모든 O/S에서 동작하기 때문에 기업 시스템을 구축하기 위해서 가장 많이 사용되는 언어다. 자바 언어에서는 데이터베이스를 지원하는 범용 클래스를 사용할 수도 있고, 각 DBMS 벤더가 제공하는 전용 클래스를 사용할 수도 있다. 오라클을 사용하여 시스템을 구축할 때는 오라클이 제공하는 전용 드라이버를 사용하는 경우가 대부분이므로 이 책에서도 오라클이 제공하는 JDBC 클래스를 사용하기로 한다.
(/ p.395)

관련이미지

저자소개

생년월일 -
출생지 -
출간도서 0종
판매수 0권

정보관리기술사, 정보시스템감리사, 기술지도사, 데이터품질인증심사원
(현)위즈베이스 컨설팅본부 이사
(전)위즈베이스 기술연구소장
(전)웨어밸리 기술연구소장
(전)한국오라클 컨설팅사업부
(전)삼성 SDS 공공사업부
서울대학교 공과대학 학사

리뷰

0.0 (총 0건)

기대평

작성시 유의사항

평점
0/200자
등록하기

기대평

10.0

교환/환불

교환/환불 방법

‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

교환/환불 가능 기간

고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

교환/환불 비용

고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

교환/환불 불가사유

반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

소비자 피해보상

소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

기타

도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

배송안내

  • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

  • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

  • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

  • 배송비

도서(중고도서 포함) 구매

2,000원 (1만원이상 구매 시 무료배송)

음반/DVD/잡지/만화 구매

2,000원 (2만원이상 구매 시 무료배송)

도서와 음반/DVD/잡지/만화/
중고직배송상품을 함께 구매

2,000원 (1만원이상 구매 시 무료배송)

업체직접배송상품 구매

업체별 상이한 배송비 적용