절차적 언어의 최고급 요소를 통합한 강력한 언어! PL/SQL
PL/SQL은 오라클 DBMS에 의해 실행되는 트리거나 축적 절차 등을 작성하기 위해 사용되는 오라클의 프로그래밍 언어이다. 이것은 또한 SQL 질의에 의해 반환된 데이터에 대해, 정렬 등의 처리를 부가하기 위해 사용되기도 한다. PL/SQL 프로그램은 선언부, 실행명령어들, 그리고 예외처리 부분 등으로 구성되는 하나의 블록으로 구조화되어 있다.
오라클과 오라클 개발자들의 기술이 더욱 정교해짐에 따라, SQL 고유의 제약사항(특히 절차적 제어 기능의 부족)이 부각되었다. SQL은 제4세대 언어로서 프로그래머는 작업이 수행되는 방법이 아니라 수행될 작업 자체만 지정하면 된다. C와 같은 언어는 제3세대 언어이다. 제3세대 언어에서는 프로그래머가 프로그램의 작동 방법을 정확하게 제어할 수 있다. 두 세대 언어 모두 유용하고 각 언어별로 고유의 장단점을 갖고 있다.
제3세대 언어의 절차적 기능이 특히 오라클의 개발 툴에서 필요해짐에 따라 오라클社은 PL/SQL언어를 개발했다. PL/SQL(Procedural Language extensions to SQL)은 오라클 버전 6과 함께 처음 소개되었고, 이후 버전이 출시됨에 따라 함께 지속적으로 수정/발전되어 왔다. 현재 모든 오라클 툴에서 사용되고 있으며, 개발자에게 절차적 기능과 비절차적 기능을 모두 제공한다. PL/SQL 코드는 SQL*Plus에서 독립적으로 수행될 수도 있고, 오라클 폼이나 리포트의 일부로 수행될 수도 있다. 또한 웹 애플리케이션의 일부로 개발되어 수행될 수도 있고, 데이터베이스 내에 저장되어 데이터베이스 자체에 의해 수행될 수도 있다.
이 책은 초판이 나온 이래로 계속해서 초보자나 숙련가 모두에게 핵심 레퍼런스로 인정받아왔다. 이번 개정 3판에서는 자바나 강력한 전자상거래 애플리케이션을 실행하기 위한 다른 기술들과 통신할 수 있는 ‘인터넷 데이터베이스’로의 오라클 8i, 9i같은 최신 오라클 버전으로 완벽하게 업데이트되었다. 오라클은 PL/SQL 언어에 상당한 변화를 가져왔으며 이러한 능력을 제대로 사용해보고 싶은 개발자들은 이 책에서 자신들이 필요로하는 정보를 얻을 수 있을 것이다.
이 책에는 오라클 제품의 핵심인 PL/SQL 언어의 다음과 같은 특징을 내용으로 구성하여 오라클 개발자와 관리자들이 데이터베이스를 효율적으로 관리하고 관련 애플리케이션 개발에 큰 도움을 줄 수 있게 하였다.
첫째, 결과를 얻어내기 위해 특정한 기능을 약간 변경하여 사용하기도 하는 비표준적인 방법과 함께, PL/SQL 언어의 기초적인 내용뿐만 아니라 더 깊은 내용도 포함되어 있다.
둘째, 필요한 분석 과정을 통하여 개발자들이 문제 해결책을 찾아내는 데 도움이 되도록 많은 예제 코드를 사용했다.
셋째, 포괄적인 전략과 코드 구조 활용 방안을 익혀, 문제를 만났을 때 효과적인 방법으로 PL/SQL을 활용할 수 있게 했다.
넷째, 오라클 7.3.4부터 오라클 9i 릴리즈 2 사이라면, 버전에 상관없이 필요한 정보를 찾을 수 있다.
[ 주요내용 ]
이 책은 총 6부 23장이며, 각 부를 통하여 독자들의 능력과 이해를 향상시키고 실무에 직접 활용할 수 있게 구성하였다.
1부에서는 매우 기초적인 내용과 PL/SQL 언어의 주요 특징, SQL*Plus와 몇몇 다른 환경에서 PL/SQL 코드를 실행하는 방법을 다룬다.
2부에서는 조건과 순차제어, 루프, PL/SQL 언어의 예외 처리에 대해 설명한다.
3부에서는 PL/SQL에서 정의될 수 있는 숫자, 문자열, 레코드, 컬렉션 등 프로그램 데이터의 다양한 자료형을 설명한다. 또한 INTERVAL, TIMESTAMP, XMLType 등과 같은 오라클 9i에 추가된 새로운 자료형과 데이터를 조작하거나 수정할 수 있게 하는 오라클의 다양한 내장함수를 설명한다.
4부에서는 PL/SQL 코드의 가장 핵심이 되는 요소인, SQL을 이용한 뒤에 숨겨진 데이터베이스로의 연결에 대해 설명하고, PL/SQL에서 테이블에 업데이트, 삽입, 삭제하는 트랜잭션을 정의하는 방법을 살펴볼 것이다. 또한 PL/SQL 프로그램에서 데이터베이스 안의 정보를 가져오는 방법과 오라클 8i에서 선보인 NDS를 이용하여 SQL문을 동적으로 실행하는 방법에 대해서도 설명한다.
5부에서는 프로시저나 함수, 트리거, 패키지를 포함한 애플리케이션 블록을 구축하는 방법을 알아볼 것이다. 특히 19장에서는 PL/SQL 튜닝이나 디버깅에 대한 제안사항을 포함해서, PL/SQL 기본을 다루는 방법을 설명한다.
6부에서는 PL/SQL의 메모리 사용법이나 서버 측과 클라이언트 측에서의 차이점을 포함해서, PL/SQL 실행시간 구조에 대해서 설명하고 오라클의 객체지향 관련 특징을 심도 있게 다룬다. 또한 PL/SQL 애플리케이션에서 자바와 C를 호출하는 방법을 설명한다.
[ 대상층 ]
- PL/SQL 레퍼런스를 원하는 데이터베이스 관리자
- PL/SQL 프로그래밍을 공부하고자 하는 오라클 개발자
- 효율적이고 자동적인 데이터베이스 관리를 원하는 모든 프로그래머