1. SQL 개요
- SQL (Structured Query Language): 구조화 질의어로 데이터베이스를 정의하고 조작하며 제어하는 언어
- 기능 구분
- DDL (Data Definition Language): 데이터 구조 정의 (테이블 생성, 수정 등)
- DML (Data Manipulation Language): 데이터 조작 (검색, 삽입, 수정, 삭제)
- DCL (Data Control Language): 데이터 접근 제어 (권한 부여, 회수 등)
- 활용: Java, C/C++, Python 등 다양한 프로그래밍 언어에서 응용 프로그램과 함께 사용 가능
2. SQL 데이터 타입
- 숫자형
- INTEGER, SMALLINT: 정수형
- FLOAT(n), REAL: 실수형
- 문자형
- CHAR(n): 고정 길이 문자
- VARCHAR(n): 가변 길이 문자
- 날짜·시간형
- DATE: 날짜 (형식 YY-MM-DD)
- TIME: 시간 (형식 hh:mm:ss)
- TIMESTAMP: 날짜와 시간 모두 포함
- INTERVAL: 날짜·시간 간격 표현 가능
3. SQL [DDL] - 테이블 생성
CREATE TABLE student(
Sno INT,
Sname VARCHAR(20),
Year INT,
Dept VARCHAR(10)
);
- CREATE TABLE 문을 통해 테이블 구조 정의
- 각 열 이름과 데이터 타입 명시
4. SQL [DML] - SELECT (데이터 조회)
SELECT 열(필드명)
FROM 테이블명
WHERE 조건;
SELECT Sname, Sno
FROM STUDENT
WHERE Dept = '컴퓨터';
SELECT STUDENT.Sname, STUDENT.Sno
FROM STUDENT
WHERE STUDENT.Dept = '컴퓨터';
5. SQL [DML] - INSERT (데이터 삽입)
INSERT INTO 테이블명(열1, 열2, ...)
VALUES (값1, 값2, ...);
예시
INSERT INTO STUDENT(Sno, Sname, Year, Dept)
VALUES (1001, '홍길동', 3, '컴퓨터');
6. SQL [DML] - DELETE (데이터 삭제)
DELETE FROM 테이블명
WHERE 조건;
예시
DELETE FROM STUDENT
WHERE Sno = 1001;
7. SQL [DML] - UPDATE (데이터 수정)
UPDATE 테이블명
SET 열1 = 값1, 열2 = 값2
WHERE 조건;
예시
UPDATE STUDENT
SET Year = 4
WHERE Sno = 1001;
8. 실습 환경
- 언어: Python
- DB 관리 도구: HeidiSQL
- 데이터베이스: MySQL