PostgreSQL
- 공식 홈페이지
- 한국 사용자 커뮤니티
- http://translate.postgresql.kr/redmine 한국어 설명서
- http://www.postgresdba.com/ PostgreSQL/Enterprisedb 한국 커뮤니티
https://ko.wikipedia.org/wiki/PostgreSQL#cite_note-1
http://wiki.postgresql.org/wiki/Todo
: 객체-관계형 데이터베이스 관리 시스템(ORDBMS)의 일종
– PostgreSQL (post-Ingres +SQL)
특징점
유연한 객체 생성
다양한 데이터베이스 객체(연산자, 복합 자료형, 집계 함수, 자료형 변환자, 확장 기능)를 사용자가 임의로 만들 수 있는 기능을 SQL 차원에서 제공한다. 이는 단순한 자료 저장소로써의 기능을 넘어, 마치 하나의 새로운 프로그래밍 언어처럼 개발자의 창의성에 따라 무한한 기능을 손쉽게 구현할 수 있도록 한다.
상속
(java 또는 C++ 프로그래밍 언어와 같이) 테이블을 만들어, 그 테이블 상속 기능을 이용해 하위 테이블을 만들 수 있다.
테이블에 저장된 자료는 상위 테이블을 조회하면, 해당 테이블의 하위 테이블에 포함된 모든 자료를 조회할 수 있으며,
하위 테이블을 만들 때, 상위 테이블의 칼럼을 그대로 상속 받으면서, 하위 테이블에만 속하는 칼럼을 추가로 만들 수 있다.
함수
‘저장 프로시저’라고 불리는 SQL문으로 작성된 함수를 서버환경에서 사용할 수 있다.
비록 다른 언어와는 달리 제어문과 반복문을 사용하지는 못하지만, 다른 언어와 결합시킬 수 있다. 일부 언어에서는 심지어 트리거 내부에서 실행시킬 수 있다.
이러한 언어의 예는 다음과 같다.
- PL/pgSQL (오라클의 PL/SQL과 유사하다)
- 스크립트 언어를 통한 지원 (예, PL/Python, PL/php, PL/Perl)
- 컴파일 언어를 통한 지원 (예, C/C++, PL/Java)
- 통계적 언어를 통한 지원 (예, PL/R)
PostgreSQL은 테이블에 대한 질의 결과를 반환하기 위한 ‘행 반환 함수’를 지원한다. (실행권한은 함수 작성자 및, 실행자 모두에게 있다.)
데이터베이스 관리 도구
Server 도구
postgres
최상위 서버 데몬
pg_ctl
서버 시작, 중지, 상태 등 서버 제어를 위한 명령어
initdb
데이터베이스 초기화 명령어
pg_resetxlog
트랜잭션 로그 초기화 명령어
클라이언트 도구
psql
기초적인 관리툴
특징:
명령어 기반 인터페이스
셸과 유사한 자동완성 및 스크립트를 통한 자동화 기능을 지원
pgAdmin
그래픽 사용자 인터페이스를 지닌 툴 (개발초기의 이름은 pgManager)
phpPgAdmin
웹 기반의 관리 툴 (cf. phpMyAdmin과 인터페이스가 거의 똑같이 구성)