728x90
SQL 응용
SQL의 개념
DDL - 데이터 정의어
- SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 언어
- CREATE, ALTER, DROP
DML - 데이터 조작어
- 데이터베이스 사용자가 응용 프로그램이나 질의어를 통하여 저장된 데이터를 실질적으로 처리하는 데 사용되는 언어
- SELECT, INSERT, DELETE, UPDATE
DCL - 데이터 제어어
- 데이터의 보안, 무결성, 회복, 병행 수행 제어 등을 정의하는데 사용하는 언어
- COMMIT, ROLLBACK, GRANT, REVOKE
DDL
CREATE TABLE
CREATE TABLE 테이블명 (
컬럼명1 데이터타입 [NOT NULL | UNIQUE | PRIMARY KEY | DEFAULT 기본값 | CHECK(조건)],
컬럼명2 데이터타입 [...],
...
[CONSTRAINT 제약명 PRIMARY KEY (컬럼명 [, ...])],
[CONSTRAINT 제약명 UNIQUE (컬럼명 [, ...])],
[CONSTRAINT 제약명 FOREIGN KEY (컬럼명) REFERENCES 참조테이블(참조컬럼)],
[CONSTRAINT 제약명 CHECK (조건)]
);
ALTER TABLE
ALTER TABLE 테이블명
ADD (컬럼명 데이터타입 [제약조건]);
ALTER TABLE 테이블명
MODIFY (컬럼명 데이터타입 [제약조건]);
ALTER TABLE 테이블명
DROP COLUMN 컬럼명;
ALTER TABLE 테이블명
ADD CONSTRAINT 제약명 제약조건 (컬럼명[, ...]);
ALTER TABLE 테이블명
DROP CONSTRAINT 제약명;
ALTER TABLE 테이블명
RENAME COLUMN 기존컬럼명 TO 새컬럼명;
ALTER TABLE 테이블명
RENAME TO 새테이블명;
DROP
-- 테이블 삭제
DROP TABLE 테이블명 [RESTRICT | CASCADE];
-- 뷰 삭제
DROP VIEW 뷰명 [RESTRICT | CASCADE];
-- 인덱스 삭제
DROP INDEX 인덱스명 [RESTRICT | CASCADE];
-- 시퀀스 삭제
DROP SEQUENCE 시퀀스명 [RESTRICT | CASCADE];
-- 제약조건 삭제 (ALTER TABLE과 함께 사용)
ALTER TABLE 테이블명 DROP CONSTRAINT 제약조건명;
- CASCADE : 제거할 요소를 참조하는 다른 모든 개체를 함께 제거함. 즉 주 테이블의 데이터 제거 시 각 외래키와 관계를 맺고 있는 모든 데이터를 제거하는 참조 무결성 제약 조건을 설정하기 위해 사용됨
- RESTRICT : 다른 개체가 제거할 요소를 참조중일 때는 제거를 취소함
DCL
GRANT / REVOKE
- GRANT : 권한을 부여함
- REVOKE : 권한을 취소함
GRANT 권한목록 ON 객체명 TO 사용자명 [, 사용자명 ...] [WITH GRANT OPTION]; REVOKE 권한목록 ON 객체명 FROM 사용자명 [, 사용자명 ...]; - 권한목록 : SELECT, INSERT, UPDATE, DELETE, ALL .....
- WITH GRANT OPTION 으로 다른 사용자에게 권한을 넘겨줄 수 있음
DML
INSERT INTO ~
INSERT INTO 테이블명 [(컬럼명1, 컬럼명2, ...)]
VALUES (값1, 값2, ...);
DELETE FROM ~
UPDATE 테이블명
SET 컬럼명1 = 값1 [, 컬럼명2 = 값2, ...]
[WHERE 조건];
UPDATE ~ SET ~
UPDATE 테이블명
SET 컬럼명1 = 값1 [, 컬럼명2 = 값2, ...]
[WHERE 조건];728x90
'개발공부 > 자격증 공부' 카테고리의 다른 글
| 정보처리기사 - 데이터베이스 구축(5장) 정리 (0) | 2025.05.11 |
|---|---|
| 정보처리기사 - 데이터베이스 구축(4장) 정리 (0) | 2025.05.11 |
| 정보처리기사 - 데이터베이스 구축(2장) 정리 (0) | 2025.05.11 |
| 정보처리기사 - 데이터베이스 구축(1장) 정리 (0) | 2025.05.08 |
| 정보처리기사 - 소프트웨어 개발(5장) 정리 (0) | 2025.05.08 |