▶️ DDL(Data Definition Language) : 데이터 정의어
CREATE
, ALTER
, DROP
, RENAME
, TRUNCATE
...)▶️ DML(Data Manipulation Language) : 데이터 조작어
SELECT
, INSERT
, UPDATE
, DELETE
...)▶️ DCL(Data Control Language) : 데이터 제어어
GRANT
, REVOKE
...)▶️ TCL(Transaction Control Language) : 트랜잭션 제어어
COMMIT
, ROLLBACK
, SAVEPOINT
...);
)으로 끝낼 것' '
)로 감쌀 것SELECT `COST`, `TYPE` FROM `INVOICE`;
--
를 붙여 사용/* */
을 붙여 사용/* SELECT * FROM EMP WHERE EMPID=(SELECT * FROM WHERE NAME="GDSC"); */
CREATE DATABASE
: 새로운 데이터베이스 생성
CREATE DATABASE 데이터베이스이름;
USE : 데이터베이스 선택
USE 데이터베이스이름;
CREATE TABLE
: 새로운 테이블 생성
테이블 이름
, 필드 목록
, 필드 타입
CREATE TABLE 테이블이름
(
필드이름1 필드타입1,
필드이름2 필드타입2,
...
);
ALTER DATABASE
: 데이터베이스 수정
DATABASE
Dir → db.opt
파일에서 확인ALTER DATABASE 데이터베이스이름 CHARACTER SET=문자집합이름;
ALTER DATABASE 데이터베이스이름 COLLATE=콜레이션이름;
ALTER DATABASE Hotel CHARACTER SET=euckr_bin COLLATE=euckr_korean_ci;
ALTER TABLE
: 테이블 수정
ADD
를 함께 사용할 경우 테이블에 필드 추가 가능 ALTER TABLE 테이블이름 ADD 필드이름 필드타입
DROP
을 함께 사용할 경우 테이블의 필드 삭제 가능 ALTER TABLE 테이블이름 DROP 필드이름;
MODIFY COLUMN
을 함께 사용할 경우 테이블의 필드 타입 변경 가능 ALTER TABLE 테이블이름 MODIFY COLUMN 필드이름 필드타입;
DROP DATABASE
: 데이터베이스 삭제 DROP DATABASE 데이터베이스이름;
DROP TABLE
: 테이블 삭제 DROP TABLE 테이블이름;
TRUNCATE TABLE
: 테이블 자체 X, 테이블의 데이터만 삭제SELECT
로 테이블의 데이터를 불러올 경우 아무런 데이터도 저장되어 있지 않기에 조회되는 데이터가 없음 TRUNCATE TABLE 테이블이름;
INSERT INTO
: 테이블에 새로운 레코드 추가VALUES
: values 절을 사용해 해당 테이블에 새로운 레코드 추가 가능INSERT INTO 테이블이름(필드이름1, 필드이름2, 필드이름3, ...)
VALUES (데이터값1, 데이터값2, 데이터값3, ...);
INSERT INTO 테이블이름 VALUES (데이터값1, 데이터값2, 데이터값3, ...);
NULL
을 저장할 수 있도록 설정된 필드DEFAULT
제약 조건이 설정된 필드AUTO_INCREMENT
키워드가 설정된 필드UPDATE
: 레코드의 내용 수정UPDATE
문 : 해당 테이블 중 WHERE
절의 조건을 만족하는 레코드의 값만 수정UPDATE 테이블이름
SET 필드이름1=데이터값1, 필드이름2=데이터값2, ...
WHERE 필드이름=데이터값;
DELETE
: 레코드 삭제DELETE
문 : 해당 테이블의 WHERE
절 조건을 만족하는 레코드만 삭제WHERE
절 생략 시 해당 테이블에 저장된 모든 데이터 삭제DELETE FROM 테이블이름
WHERE 필드이름=데이터값;
SELECT
: 테이블의 레코드 선택
FROM
: 레코드를 선택할 테이블의 이름 명시
테이블에서 선택하고자 하는 필드의 이름 SELECT
키워드 바로 뒤에 명시
WHERE
절 : 선택할 레코드의 조건 상세 설정 가능
SELECT 문법
SELECT 필드이름
FROM 테이블이름
[WHERE 조건]
모든 필드 선택
SELECT *
FROM GDSC;
특정 조건의 레코드 선택
- Name의 필드 값이 'GDSC SSU'인 것 만 선택
SELECT *
FROM GDSC
WHERE Name = 'GDSC SSU';
특정 필드만 선택
,
)으로 여러개의 필드 이름을 한 번에 명시 가능SELECT Name, StudentNum
FROM GDSC;
WHERE
절 추가로 특정 조건 만족하는 레코드만 선택 가능
SELECT Name, ReserveDate
FROM Reservation
WHERE ID <= 3 AND ReserveDate > '2016-02-01';
ORDER BY
절의 추가로 레코드 정렬 가능
SELECT *
FROM GDSC
ORDER BY StudentNum;
별칭(alias)을 이용한 처리
1. SELECT 필드이름 AS 별칭 FROM 테이블이름;
2. SELECT 필드이름 FROM 테이블이름 AS 별칭;