: DB를 구축하거나 수정할 목적으로 사용하는 언어
CREATE SCHEMA 스키마명 AUTHORIZATION 사용자_id;
CREATE DOMAIN 도메인명 [AS] 데이터_타입 -- 지원하는 기본 데이터 타입
[DEFAULT 기본 값] --데이터를 입력하지 않았을 경우
[CONSTRAINT 제약조건명 CHECK (범위값)];
CREATE TABLE 기본테이블
([속성명 데이터_타입 [DEFALUT 값] [NOT NULL], ...
[PRIMARY KEY(기본키_속성명)],
[UNIQUE(대체키 속성, ...)],
[FOREIGN KEY(속성명),
REFERENCES 참조테이블[(기본키_속성명)]
[ON DELETE 옵션]
[ON UPDATE 옵션]
[,CONSTRAINT 제약조건명]**[CHECK(조건식)]);**
CREATE VIEW 뷰명[(속성명[,속성명])]
AS SELECT문;
[WITH CHECK OPTION]
-- WITH CHECK OPTION : 갱신이나 삽입시 뷰의 정의 조건을 따름
CREATE [UNIQUE] INDEX 인덱스명
ON 테이블명(속성명 [ASC|DESC] [,속성명 [ASC|DESC]]) --생략된 경우 오름차순
[CLUSTER]; -- 클러스터 사용시 클러스터드 인덱스로 설정 : 인덱스 순서에 따라 데이터가 정렬
ALTER TABLE 테이블_이름 ADD 열_이름 데이터_타입 [DEFAULT 기본_값];
ALTER TABLE 테이블_이름 ALTER 열_이름 [SET DEFAULT 기본_값]; --default 값 변경
ALTER TABLE 테이블_이름 DROP 열_이름 [CASCADE]; --속성 삭제 [제약조건 있으면 같이 삭제]
: 데이터의 보안, 무결성, 회복, 병행 제어등을 정의하는데 사용하는 언어
COMMIT : 수행된 결과를 물리적 디스크에 저장
ROLLBACK
변경되었지만 아직 commit 되지 않은 모든 내용 취소 → 원래 상태로 복구
savepoint : rollback 위치인 저장점을 지정하는 명령어, 저장할때 이름을 부여해야함
ex) SAVEPOINT S1; → ROLLBACK TO S1;
GRANT : 사용 권한을 부여
REVOKE : 사용 권한을 취소
DROP SCHEMA 스키마명 [CASCADE|RESTRICT];
DROP DOMAIN 도메인명 [CASCADE|RESTRICT];
DROP TABLE 테이블명 [CASCADE|RESTRICT];
DROP VIEW 뷰명 [CASCADE|RESTRICT];
DROP INDEX 인덱스명 [CASCADE|RESTRICT];
DROP CONSTRAINT 제약조건명;
-- CASCADE : 참조하는 다른 모든 개체를 함께 제거
-- RESTRICT : 참조중일 때는 제거를 취소
-- 사용자 등급 지정, 해제
GRANT 사용자등급 TO 사용자_ID_LIST [IDENTIFIED BY 암호];
REVOKE 사용자등급 FROM 사용자_ID_LIST;
-- 테이블 및 속성에 대한 권한 부여, 취소
GRANT 권한_리스트 ON 개체 TO 사용자 [WITH GRANT OPTION];
REVOKE [GRANT OPTION FOR] 권한_리스트 FROM 개체 사용자 [CASCADE];
-- 권한 종류 : ALL, SELECT,INSERT,DELETE,UPDATE
: 저장된 데이터를 실질적으로 관리하는데 사용되는 언어
사용자와 DBMS 간의 인터페이스 제공
유형
INSERT INTO ~
INSERT INTO 테이블명 ([속성명1, 속성명2, ...])
VALUES (데이터1, 데이터2, ...);
--
INSERT INTO 부원(이름,생일)
SELECT 이름,생일 FROM 학교 WHERE 나이=15;
DELETE FROM~
DELETE FROM 테이블명 [WHERE 조건];
UPDATE ~ SET ~
UPDATE 테이블명 SET 속성명 = 데이터[,속성명 = 데이터, ...]
[WHERE 조건];