정처기 실기 SQL 요약 | DML | DDL | DCL
정보처리기사에 꼭! 나오는 문제 중 하나는 SQL입니다. SQL문을 작성하라는 문제 혹은 SQL문을 읽고 나서 어떤 결과가
나타날지에 대한 것을 물어보는 문제가 매번 출시됩니다.
데이터를 수정하거나 삭제하는 것은 테이블의 열을 삭제하는 명령어들과 헷갈릴 수 있습니다.
지문에 데이터를 말하는 지, 열을 말하는지를 확인하고 이에 맞게 작성할 수 있어야합니다.
아래 내용들을 통해 DDL, DML, DCL을 잘 구분해보시길 바랍니다.
목차
DML
DML은 데이터를 조작하고 조작된 데이터를 관리하기 위해 사용됩니다. 주요 DML 명령어에는 SELECT, INSERT, UPDATE, DELETE 등이 포함됩니다. 이러한 명령어들은 데이터베이스 테이블의 행에 대한 작업을 수행합니다.
SELECT 컬럼명 FROM 테이블명
데이터베이스에서 데이터를 조회하는 데 사용됩니다. 상세한 것은 아래 페이지를 확인해주세요.
2023.07.16 - [정보처리기사] - [정보처리기사 실기] SQL 주요 명령어 | WHERE
INSERT INTO _ VALUES
새로운 튜플을 삽입하는 것
INSERT INTO 테이블 (컬럼1, 컬럼2, 컬럼3) VALUES (데이터1, 데이터2, 데이터3);
DELETE FROM_WHERE
튜플을 삭제하는 것
DELETE FROM 테이블 WHERE 조건;
UPDATE 테이블 SET_WHERE
UPDATE: 데이터베이스 테이블의 기존 데이터를 업데이트하는 데 사용됩니다.
UPDATE 테이블 SET 컬럼 = 데이터 WHERE 조건;
DDL
테이블 자체를 수정, 변경하는 것. 오토 커밋됨. DDL은 데이터베이스 스키마와 객체를 정의하고 관리하는 데 사용됩니다. 주요 DDL 명령어에는 CREATE, ALTER, DROP, TRUNCATE 등이 포함됩니다. 이러한 명령어들은 테이블, 인덱스, 제약 조건 등 데이터베이스 구조를 조작합니다.
CREATE
CREATE: 데이터베이스 개체(테이블, 뷰, 인덱스 등)를 생성하는 데 사용됩니다.
CREATE table명 _ (컬럼 내용들)
CREATE TABLE 테이블 (
컬럼1 데이터형,
컬럼2 데이터형,
컬럼3 데이터형
);
제약조건
- PRIMARY KEY:
PRIMARY KEY 제약 조건은 테이블의 기본 키를 정의합니다. 기본 키는 각 행을 고유하게 식별하는 열 또는 열의 집합입니다. - FOREIGN KEY:
FOREIGN KEY 제약 조건은 테이블 간의 관계를 정의합니다. 외래 키는 다른 테이블의 기본 키와 연결됩니다. - UNIQUE:
UNIQUE 제약 조건은 특정 열(들)의 값이 중복되지 않도록 보장합니다. UNIQUE 제약 조건을 가진 열은 유일한 값만 허용합니다. - NOT NULL:
NOT NULL 제약 조건은 특정 열이 NULL 값을 허용하지 않도록 합니다. 해당 열은 항상 값이 있어야 합니다. - CHECK:
CHECK 제약 조건은 특정 열에 대한 값을 검사하여 지정된 조건을 만족해야만 허용합니다.
CREATE TABLE 테이블 (
id INT PRIMARY KEY,
name VARCHAR(50)
);
CREATE TABLE Orders (
order_id INT PRIMARY KEY,
customer_id INT,
order_date DATE,
FOREIGN KEY (customer_id) REFERENCES Customers(customer_id)
);
CREATE TABLE 테이블 (
id INT,
email VARCHAR(50) UNIQUE,
name VARCHAR(50)
);
CREATE TABLE 테이블 (
id INT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT
);
CREATE TABLE 테이블 (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT CHECK (age >= 18)
);
constraint
SUBQUERY를 이용한 create
CREATE TABLE NewTable AS
SELECT column1, column2, ...
FROM ExistingTable
WHERE condition;
CREATE VIEW view명 SELECT _
논리적으로 존재하는 데이터
CREATE INDEX index명 SELECT _
ALTER TABLE table명 _ ADD
ALTER: 이미 존재하는 데이터베이스 개체의 구조를 변경하는 데 사용됩니다. 이 구문은 기존 테이블에 새로운 열을 추가하는 데 사용됩니다. 추가할 열의 이름과 데이터 유형을 지정해야 합니다.
ALTER TABLE 테이블 ADD COLUMN 컬럼 데이터형;
ALTER TABLE Customers ADD Email VARCHAR(100);
ALTER TABLE table명 _ MODIFY
이 구문은 기존 테이블의 열을 수정하는 데 사용됩니다. 열의 이름, 데이터 유형 및 다른 속성을 변경할 수 있습니다.
ALTER TABLE 테이블명 MODIFY 열이름 새로운데이터유형;
ALTER TABLE Customers MODIFY Email NVARCHAR(100);
DROP | cascade | RESTRICT
ALTER: 이미 존재하는 데이터베이스 개체의 구조를 변경하는 데 사용됩니다.
DROP TABLE 테이블;
CASCADE:
CASCADE 옵션은 DROP 문이 참조하는 다른 개체도 함께 자동으로 삭제되도록 지정합니다. 따라서, DROP 문으로 삭제한 개체와 관련된 다른 개체가 있다면, CASCADE 옵션이 적용되어 참조되는 모든 개체가 함께 삭제됩니다.
DROP TABLE 테이블명 CASCADE;
RESTRICT:
RESTRICT 옵션은 DROP 문이 객체를 삭제하기 전에 해당 객체를 참조하는 다른 개체가 있는지 확인하고, 참조하는 개체가 있다면 삭제를 방지합니다. 다른 개체가 해당 객체를 참조하고 있는 경우, RESTRICT 옵션을 사용하면 삭제가 제한됩니다.
DROP TABLE 테이블명 RESTRICT;
TRUNCATE
TRUNCATE: 테이블의 모든 데이터를 삭제하는 데 사용됩니다.
TRUNCATE TABLE 테이블;
DELETE
DCL
DCL은 데이터베이스 사용자의 권한을 관리하고 데이터베이스에 대한 접근을 제어하는 데 사용됩니다. 주요 DCL 명령어에는 GRANT, REVOKE 등이 포함됩니다.
GRANT: 데이터베이스 사용자에게 특정 권한을 부여합니다.
REVOKE: 데이터베이스 사용자로부터 특정 권한을 취소합니다.
GRANT기능 ON 테이블 TO 누구 WHIT GRANT OPTION
GRANT 권한 ON 테이블 TO 사용자;
REVOKE 기능 ON 테이블 FROM 누구
REVOKE 권한 ON 테이블 FROM 사용자;
TCL
COMMIT
ROLLBACK
SAVEPOINT
'정보처리기사' 카테고리의 다른 글
[정보처리기사 실기] 애플리케이션 테스트 관리 (0) | 2023.07.17 |
---|---|
[정보처리기사 실기] 데이터 구축 용어 요약 스키마 (0) | 2023.07.16 |
[정보처리기사 실기] SQL 주요 명령어 | WHERE |DISTINCT|COUNT|BETWEEN|LIKE|IN|GROUP BY|ORDER BY|SUB QUERY|JOIN|SELF JOIN (0) | 2023.07.16 |
[정보처리기사 실기] C언어 포인터 개념 잡기 | 예시 | 문제 | 활용 (0) | 2023.07.14 |
[정처기실기] 프로그램 언어활용 - JAVA 예제 풀기 (0) | 2023.07.12 |
댓글