DDL
DDL(Data Definition Language): 데이터베이스 정의 언어
데이터베이스 구조를 정의하거나 변경하기 위한 SQL 명령어의 집합
create database
create table
create index
create view
alter database
alter table
alter idnex
drop database
drop table
drop index
truncate
truncate table
create database
CREATE DATABASE database_name
WITH
[OWNER = role_name]
[TEMPLATE = template]
[ENCODING = encoding]
[LC_COLLATE = collate]
[LC_CTYPE = ctype]
[TABLESPACE = tablespace_name]
[ALLOW_CONNECTIONS = true | false]
[CONNECTION LIMIT = max_concurrent_connection]
[IS_TEMPLATE = true | false ];
OWNER
생성한 role 지정
TEMPLATE
지정하지 않는다면 template1
LC_COLLATE
데이터 정렬순서 지정
ORDER BY 절이 포함된 쿼리에서 문자열의 정렬 순서에 영향
기본 값은 템플릿 데이터베이스의 LC_COLLATE
LC_CTYPE
문자 분류를 지정
소문자, 대문자, 숫자 등의 문자 분류에 영향
기본값은 템플릿 데이터베이스의 LC_CTYPE
TABLESPACE
테이블스페이스 이름을 지정
기본값은 템플릿 데이터베이스의 테이블스페이스
CONNECTION LIMIT
최대 동시 연결 수를 지정
기본값은 -1로 무제한 의미
특정 데이터베이스의 최대 동시 연결 수를 구성할 수 있는 공유 호스팅 환경에서 유용할 수 있음
ALLOW_CONNECTIONS
boolean value 이며 false 인 경우 데이터베이스에 연결할 수 없음
IS_TEMPLATE
true 인 경우 CREATEDB 권한이 있는 모든 사용자가 복제 가능
false 인 경우 수퍼유저 또는 데이터베이스 소유자만 복제 가능
CREATE DATABASE cookbook
WITH
ENCODING = 'UTF8'
LC_COLLATE = 'en_US.UTF-8'
LC_CTYPE = 'en_US.UTF-8'
TEMPLATE = template0;
;
Last updated