- SQL 정의어
SQL(Structured Query Language)은 관계 데이터베이스에서 사용되는 대표적인 언어로, 관계 대수와 관계 해석을 기초로 데이터베이스의 작업을 보다 효율적이고 다양하게 표현하고 처리하기 위한 고급 데이터베이스 언어이다.
대화식이며 기타 다른 언어로 작성된 프로그램에 삽입되어 처리할 수 있다
- SQL정의어 (DDL : Data Definition Language)
- 정의어(DDL)는 관계 데이터베이스에서 사용될 테이블, 스키마, 도메인, 인덱스, 뷰 등을 정의(생성)하거나 수정, 제거하기 위해 사용
- 종류 : CREATE, ALTER, DROP 등
- CREATE
테이블, 스키마, 도메인, 인덱스, 뷰 등을 정의(생성)하기 위해 사용
- 테이블 정의
CREATE
CREATE TABLE 테이블_이름
({속성_이름 데이터_타입 [NOT NULL],}
[PRIMARY KEY(속성_이름),]
[UNIQUE(속성_이름),]
[FOREIGN KEY(속성_이름) REFERENCES 참조테이블(속성_이름)]
[ON DELETE CASCADE | SET NULL | SET DEFAULT | ON ACTION]
[ON UPDATE CASCADE | SET NULL | SET DEFAULT | ON ACTION],
[CONSTRAINT 제약조건_이름 CHECK(속성_이름=범위 값)]
);
- CREATE TABLE 테이블_이름 : 테이블을 만들겠다는 의미
- {속성_이름 데이터_타입 [NOT NULL]} : 테이블을 구성할 속성 이름과 데이터 타입등을 기입. {}가 반복의 의미이므로 테이블을 구성할 속성 수 만큼 반복.
- NOT NULL : 테이블 생성시 특정 속성값에 'NULL'이 없도록 지정할 때 사용.[]가 생략의 의미이므로 필요 없을 때는 생략
- PRIMARY KEY(속성_이름) : 테이블에서 기본키 속성을 지정할 때 사용
- UNIQUE(속성_이름) : 대체키 지정시 사용되며, 테이블 생성시 특정 속성의 값에 중복된 값이 없도록 즉, 모든 속성값이 고유한 값을 가지도록 지정할 때 사용
- FOREIGN KEY(속성_이름) REFERENCES 참조테이블(속성_이름) : 외래키를 지정할 때 사용
- CONSTRAINT 제약조건_이름 CHECK(속성_이름=범위 값) : 테이블을 생성할 때 특정 속성에 대해 속성값의 범위를 지정할 때 사용
- SQL 정의어, 조작어, 제어어는 시작부터~ ';' 까지가 하나의 문장
- 스키마 정의
- 시스템 관리자가 일반 사용자에게 스키마에 대한 권한을 주기 위해 사용
- 스키마는 CREATE SCHEMA 문에 의해 생성
- 구문
CREATE SCHEMA 스키마_이름 AUTHORIZATION 사용자;
- 도메인 정의
- 한 속성값의 범위를 지정하기 위한 도메인은 CREATE DOMAIN 문에 의해 생성
- 구문
CREATE DOMAIN 도메인_이름 데이터_타입
[DEFAULT 기본값]
[CONSTRAINT 제약조건_이름 CHECK(VALUE IN(범위 값))];
- 인덱스 정의
- 데이터베이스 내의 자료를 보다 효율적으로 검색하기 위해 인덱스를 생성
- 시스템에 의해 자동 관리
- 구문
CREATE [UNIQUE] INDEX 인덱스_이름
ON 테이블_이름(속성_이름 [ASC | DESC])
[CLUSTER];
'용어,개념' 카테고리의 다른 글
[정보처리기능사] PART 2. 데이터 모델링 (0) | 2011.12.10 |
---|---|
오버레이(Overlay) (0) | 2011.10.01 |
직교진폭변조 (QAM : Qadrature Amplitude Modulation의 약자) (0) | 2011.06.19 |
[펌]아날로그 변조 -AM과 FM (0) | 2011.06.19 |
[펌] 주소 지정 방식 (0) | 2011.06.12 |