* 2021 정보처리기능사 필기 과목 시험대비를 위해 작성한 글입니다.
제2과목 패키지활용의 SQL활용 파트에서 최소한 알아 두어야 할 SQL 명령어를 기록해 두었습니다.
개인적인 자격증 공부 기록용으로 작성한 글이기에, 잘못된 내용이 있을 수 있습니다.
■ SQL(Structured Query Language)
관계형 데이터베이스(Relational DataBase)를 조작하는 비절차적 프로그래밍 언어이다.
SQL 명령어의 종류는 데이터 정의 언어(DDL;Data Definition Language), 데이터 조작 언어(DML;Data Manipulation Language), 데이터 제어 언어(DCL;Data Control Language)로 나뉜다.
# 데이터 정의 언어 <DDL> ; 데이터의 입력,참조를 위한 테이블과 뷰(가상 테이블)를 정의하기 위한 언어이다.
CREATE 데이터베이스,테이블,뷰 작성
ALTER 데이터베이스,테이블 구조 변경
DROP 데이터베이스,테이블,뷰 삭제
- option 1) RESTRICT 삭제 대상으로 지정한 데이터베이스,테이블,뷰 등에 대하여, 이를 참조하는 객체가 존재하면 제거하지 않는다. 2) CASCADE 삭제 대상으로 지정한 데이터베이스,테이블,뷰 등에 대하여, 이를 참조하는 객체도 함께 제거한다.
■ CREATE 예시
CREATE - 데이터베이스 작성
CREATE DATABASE <데이터베이스 이름> 데이터베이스 작성
ex> CREATE DATABASE SCHOOL ; "SCHOOL" 데이터베이스를 작성한다.
CREATE - 테이블 작성
CREATE TABLE <테이블 이름> (
<열이름1> <데이터형식><열이름2> <데이터형식>)ex> CREATE TABLE CLASS(번호 INT
성명 CHAR(10)
) ; INT형 "번호"열, CHAR형 "성명"열을 가지는 "CLASS" TABLE을 생성한다.
■ DROP 예시
DROP - 일반형태
DROP DATABASE <데이터베이스 이름> 데이터베이스 삭제
ex> DROP DATABASE SCHOOL; "SCHOOL" 데이터 베이스를 삭제한다.
DROP - CASCADE ; 참조 객체 모두 제거
DROP TABLE <테이블 이름>
ex> DROP TABLE CLASS CASCADE; "CLASS" 테이블과 이를 참조하는 객체들을 모두 제거한다.
# 데이터 조작 언어 <DML> ; 테이블의 레코드를 검색(SELECT), 삽입(INSERT), 갱신(UPDATE), 삭제(DELETE) 할 때 사용하는 언어이다.
SELECT 테이블에서 데이터를 검색한다. SELECT - FROM - WHERE 유형
INSERT 테이블에 새로운 데이터(행)을 삽입한다. INSERT - INTO - VALUES 유형
UPDATE 테이블에 저장되어 있는 데이터를 갱신한다. UPDATE - SET - WHERE
DELETE 테이블에 저장된 행을 삭제한다. DELETE FROM WHERE
■ SELECT 예시 ; SELECT - FROM - WHERE
SELECT - 기본검색
SELECT 성명,주소 FROM 학급 ;
* 학급 테이블로 부터, 성명과 주소를 검색한다.
SELECT COUNT(*) FROM 학급;
* 학급 테이블의 행(튜플)의 개수를 계산한다.
SELECT - 중복값 제외 검색
SELECT DISTINCT 이름 FROM 학급 ;
* 학급 테이블로 부터 이름의 중복된 값이 없이 검색한다.
SELECT - 조건에 의한 검색
SELECT * FROM 학급 WHERE 선택과목 = "물리1" ;
* 학급 테이블로 부터, 선택과목이 물리1인 모든 데이터를 검색한다SELECT 상품명,가격 FROM 재고 WHERE 가격 >= 10000; 재고 테이블에서 가격이 10000 이상인 데이터의 상품명,가격을 검색한다.
SELECT - 순서를 명시하는 검색
SELECT * FROM 인사 ORDER BY 입사년도 ASC;
* 인사 테이블에서 입사년도 열을 오름차순으로 정렬하여 검색한다.
SELECT * FROM 인사 ORDER BY 입사년도 DESC;
* 인사 테이블에서 입사년도 열을 내림차순으로 정렬하여 검색한다.
SELECT 성명 FROM 인사 WHERE 월급 >= 200 ORDER BY 입사년도 DESC, 나이 ASC;
* 인사 테이블에서 월급이 200 이상인 직원에 대하여 입사년도는 내림차순, 나이는 오름차순으로 검색한다.
■ INSERT 예시 ; INSERT INTO VALUES
INSERT - 테이블에 새로운 행 삽입
INSERT INTO 인사(사번,성명,나이) VALUES(2021,'오묘',23);
* 인사 테이블에 사번 2021 성명 '오묘' 나이 23인 사원을 삽입한다.
INSERT - SELECT문과 함께 사용하는 삽입문
INSERT INTO 홍보부(사번,성명,나이)
SELECT 사번,성명,나이 FROM 인사 WHERE 부서명 = "홍보부"
* 인사테이블에서, 부서명이 홍보부인 사원의 사번,성명,나이를 검색해 홍보부 테이블에 삽입한다.
■ UPDATE 예시 ; UPDATE SET WHERE
UPDATE - 기본형태
UPDATE 인사 SET 월급 = 300 WHERE 사번 = 2021;
* 인사 테이블에서 사번이 2021인 직원의 월급 항복을 300으로 수정한다.
UPDATE 인사 SET 월급 *1.2 WHERE 부서명 = "홍보부";
* 인사 테이블에서 홍보부 부서의 월급을 20% 인상한다.
■ DELETE 예시 ; DELETE FROM WHERE
DELETE - 기본형태
DELETE FROM 인사;
* 인사 테이블을 모두 삭제한다.
DELETE FROM 인사 WHERE 사번 - 2021;
* 인사 테이블에서 사번이 2021인 사원을 삭제한다.
# 데이터 제어 언어 <DCL> ; 데이터베이스를 제어하는 언어이다.
GRANT 데이터 조작 권한을 사용자에게 부여한다.
REVOKE 사용자에게 부여한 데이터 조작 권한을 해제한다.
COMMIT 데이터 변경을 확정한다.
ROLLBACK 데이터 변경을 취소한다.
# FINAL CHECK QUSETION
SQL문 형식
SELECT - " " - " " / INSERT - " " - " " / UPDATE - " " - " " / DELETE - " " - " "
데이터 조작 언어(DML) 종류
1. " " 2. " " 3. " " 4. " "
데이터 정의 언어(DDL) 종류
1. " " 2. " " 3. " "
DROP명령어의 OPTION 2가지에 대해 설명하시오
1.RESTRICT 2.CASCADE
[답안]
SELECT - FROM - WHERE / INSERT - INTO - VALUES / UPDATE - SET - WHERE / DELETE - FROM - WHERE
데이터 조작 언어(DML) 종류
SELECT(검색) , INSERT(삽입) , UPDATE(갱신) , DELETE(삭제)
데이터 정의 언어(DDL) 종류
CREATE , ALTER , DROP
DROP명령어 OPTION 2가지에 대해 설명하시오
1.RESTRICT 제거할 요소가 참조 중이면 제거하지 않습니다.
2.CASCADE 제거할 요소가 참조 중이면 함께 제거합니다.
'Certificate > 정보처리기능사' 카테고리의 다른 글
[정보처리기능사] 주소 지정방식의 종류 내용정리 (0) | 2021.01.22 |
---|---|
정보처리기능사 필기대비 제 2과목 패키지활용 ; 스프레드시트/프레젠테이션 내용정리 (0) | 2021.01.21 |
[논리회로] 순서 논리 회로와 플립플롭(Flip-Flop)의 종류 (RS/JK/D/T) (0) | 2021.01.20 |
정보처리기능사 제 3과목 PC 운영체제 ; Windows 총정리 (0) | 2021.01.19 |
정보처리기능사 PC 제 3과목 운영체제 ; DOS 정리 (0) | 2021.01.19 |
댓글