- DDL - 데이터베이스 전체구조 정의
- 특징
- 논리적, 물리적 데이터 구조 정의
- 자동적으로 커밋됨 - (AUTO COMMIT)
- 즉, 여부 묻지 않고 엔터 누르면 바로 반영
- 복원시 안됨
- CREATE - 테이블 생성 및 정의라고도 함
- 물리적 데이터 구조 정의
- 객체를 만듬
- 제약조건
- pk
- fk
- unique
- not null
- check
- 성별이 M/F만 주고 싶어...
- default
- 단, VIEW는 ALTER로 재정의 할 수 없고, DROP후 CREATE로 다시 만들어 줘야 함
- ALTER - 생성, 삭제
- ADD
- ADD COLUMN 부서명 VACAHER(50)
- DROP
- DROP COLUMN 부서명
- RENAME
- RENAME COLUMN 장소 TO 가용성
- ADD
- DROP - 테이블, 뷰, 데이터베이스 등 삭제
- 옵션
- CASCADE - 관련된 것을 다 삭제시 케이스케이드 옵션
- 종속적인 객체나 권한을 함께 삭제하거나 취소시
- CASCADE - 관련된 것을 다 삭제시 케이스케이드 옵션
- 옵션
- TRUNCATE - 테이블은 남아 있고, 데이터만 삭제함
- 특징
- DML
- SELECT
- select distinct 컬럼 from 테이블명 where 조건 group by having order by
- 옵션
- BETWEEN 값 AND 값
- AND연산자로 이상/이하 이다.
- GROUP BY
- 특정 속성의 그룹을 만듬
- 경남, 전남 등...
- 특정 속성의 그룹을 만듬
- HAVING
- GROUP BY의 WHERE절
- BETWEEN 값 AND 값
- 서브쿼리(SUB QUERY)
- 기존 테이블에서 한 번더 SELECT함
- JOIN
- SELECT E.이름, A.지역 FROM 학생 E, 지역 A WHERE A.지역번호 = B.지역번호
- 별칭(Alias)
- EXISTS
- 서브 쿼리랑 같이 사용된다.
- 참, 거짓으로 반환한다.
- INSERT
- 튜플(행)에 집어넣기 위함, 즉 데이터 추가함
- INSERT INTO 테이블명 VALUES 값
- INSERT INTO 테이블명 컬럼명 VALUES 값
- 특정 컬럼을 입력하고 그외 컬럼의 입력할 값을 모르면 NULL값으로 들어감
- UPDATE
- UPDATE 테이블명 SET 컬럼=값 WHERE 컬럼=값
- DELETE
- ROLLBAKC, COMMIT 사용가능함
- DELETE FROM 테이블 WHERE 컬럼=값
- SELECT
- DCL
- 데이터 보안, 권한, 무결성 유지, 접근, 병행수행 제어에 관한 것
- 명령어
- GRANT
- GRANT 권한 ON 객체 TO 사용자 WITH GRANT OPTION
- 권한 : DML 권한
- DML뿐만 아니라 DDL도 있다. 그 중에... CREATE TABLE TO
- 객체 : 테이블, 뷰 등
- 사용자 : 아이디
- WITH GRANT OPTION : A라는 사용자가 곡 마스터나 ROOT가 아니더라도 다른 B사용자에게 권한을 줄 수 있음
- TO : ~에게
- 권한 : DML 권한
- GRANT 권한 ON 객체 TO 사용자 WITH GRANT OPTION
- REVOKE
- REVOKE 권한 ON 객체 FROM 사용자
- 권한 취소
- CASCADE
- 루트나 관리자가 A라는 사용자의 권한을 뺏으면, WITH GRANT OPTION으로 B사용자에게 주었던 권한도 뺏는다.
- 테이블 생성 권한을 뺏을 때는 CREATE TABLE FROM
- FROM : ~로부터
- REVOKE 권한 ON 객체 FROM 사용자
- GRANT
'정보처리기사 > 필기' 카테고리의 다른 글
과목3 - 데이터베이스 : 정규화 (0) | 2025.01.31 |
---|---|
과목3 - 데이터베이스 : 관계대수, 관계해석 (0) | 2025.01.31 |
과목3 - 데이터베이스의 인덱스, 트리거 (0) | 2025.01.30 |
과목3 - 데이터베이스 객체와 데이터 사전 (0) | 2025.01.30 |
과목3 - 데이터베이스의 키 (0) | 2025.01.30 |