오라클 데이터베이스(Oracle Database)는 세계적으로 널리 사용되는 관계형 데이터베이스 관리 시스템(RDBMS)이다. 오라클은 대규모 기업용 애플리케이션에서부터 중소기업용 시스템에 이르기까지 다양한 요구를 충족할 수 있다. 높은 성능, 안정성, 보안, 확장성 등이 특징이다. 오라클 데이터베이스는 SQL(Structured Query Language)을 사용하여 데이터를 처리하며, 대규모 데이터 처리와 트랜잭션 관리에 뛰어난 기능을 제공한다.
오라클에서 사용되는 주요 자료형들은 아래와 같다:
| 자료형 | 설명 |
|---|---|
NUMBER | 숫자 자료형으로, 정수 및 실수 값을 저장할 수 있다. |
VARCHAR2 | 가변 길이의 문자열 자료형이다. 길이를 지정할 수 있으며, 최대 4000바이트까지 저장할 수 있다. |
CHAR | 고정 길이의 문자열 자료형이다. 지정한 길이만큼 공간을 차지한다. |
DATE | 날짜와 시간을 저장하는 자료형이다. 시간 단위까지 저장할 수 있다. |
TIMESTAMP | DATE 자료형보다 더 세분화된 날짜 및 시간을 저장할 수 있다. 초 단위 이하까지 저장할 수 있다. |
CLOB | 문자 데이터를 대용량으로 저장할 수 있는 자료형이다. |
BLOB | 바이너리 데이터를 대용량으로 저장할 수 있는 자료형이다. |
BINARY_FLOAT | 32비트 단정도 부동소수점 숫자를 저장하는 자료형이다. |
BINARY_DOUBLE | 64비트 부동소수점 숫자를 저장하는 자료형이다. |
오라클 데이터베이스에서 객체는 복잡한 데이터 유형을 정의하는데 사용된다. 객체는 여러 필드를 포함할 수 있으며, 필드는 다양한 자료형으로 설정할 수 있다.
| 객체 이름 | 설명 | 예시 |
|---|---|---|
| Object Type | 사용자 정의 데이터 타입을 정의한다. 여러 개의 속성(필드)을 가질 수 있다. | CREATE TYPE person_type AS OBJECT (id NUMBER, name VARCHAR2(100)); |
| Table of Object | 객체를 테이블처럼 저장할 수 있는 컬렉션이다. | CREATE TYPE person_table AS TABLE OF person_type; |
PL/SQL(Procedural Language/SQL)은 오라클 데이터베이스에서 사용되는 절차형 프로그래밍 언어이다. SQL의 확장으로, SQL 문을 포함하여 조건문, 반복문, 예외 처리 등을 작성할 수 있다. PL/SQL은 주로 데이터베이스 내에서 트리거, 프로시저, 함수 등을 작성하는 데 사용된다.
DECLARE
v_employee_name VARCHAR2(100);
BEGIN
-- 직원 이름을 조회
SELECT employee_name INTO v_employee_name
FROM employees
WHERE employee_id = 101;
-- 직원 이름을 출력
DBMS_OUTPUT.PUT_LINE('Employee Name: ' || v_employee_name);
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('No employee found with the given ID.');
END;
이 코드는 employee_id가 101인 직원을 조회하여 이름을 출력하고, 만약 해당 직원이 존재하지 않으면 예외 처리 구문에 의해 오류 메시지를 출력한다.
PL/SQL은 복잡한 데이터 처리 작업을 자동화하고, 트랜잭션을 처리하는 데 중요한 역할을 한다.