티스토리 뷰
기본 DDL 활용
테이블의 구조와 제약 조건을 생성, 삭제하고 수정하는 DDL(Data Definition Language) 명령문을 작성할 수 있다.
1. DDL 개요
1. DDL 대상
DDL(Data Definition Language)은 `데이터를 정의하는 언어'로서, 보다 엄밀하게 말하면 `데이터를 담는 그릇을 정의하는 언어'이며, 이러한 그릇을 DBMS에서는 오브젝트라고 한다. DDL을 통해 정의할 수 있는 대상, 오브젝트 유형은 다음과 같다.
2. DDL 조작 방법
오브젝트를 생성, 변경 그리고 제거하기 위해 다음과 같은 명령어를 사용한다.
DDL 명령어로 분류되지는 않지만 DDL과 같이 사용되는 명령어가 있다. 비상용 제품인 M*SQL의 경우, 생성된 오브젝트의 목록을 조회하기 위해서는 SHOW 명령문을 사용하며, 내용을 조회하기 위해서는 SELECT 문을 사용한다. 상용 제품인 O*의 경우 SELECT로 목록과 내용을 조회한다.
2. DDL 활용
데이터베이스를 구축하기 위해 스키마, 테이블, 도메인, 인덱스, 뷰와 같은 오브젝트에 대한 DDL 적용이 필요하나, 본 학습에서는 테이블만을 대상으로 한다.
1. 테이블 생성
테이블 생성을 위한 DDL 사용 방법은 다음과 같이 두 종류로 분류할 수 있다.
2. 테이블 변경
ALTER를 이용하여 테이블 구조를 변경하는 문법은 다음과 같다.
3. 테이블 삭제, 절단, 이름 변경
DROP TABLE, TRUNCATE TABLE, RENAME TABLE 명령문을 사용하여 테이블을 삭제, 절단, 이름 변경을 할 수 있다. 테이블 및 테이블 내용을 삭제하기 위한 명령어의 사용 문법은 다음과 같다.
3. 제약 조건 적용
1. 제약 조건 유형
다음과 같은 제약 조건을 테이블 생성 과정에 적용할 수 있다.
2. 제약 조건 활용
테이블 생성을 위한 CREATE 문에 제약 조건을 명시하는 형태로 사용하며, ALTER를 통해 테이블의 제약 조건을 변경할 수 있다.
4. SQL 활용 주요 내용
SQL은 DDL, DML 및 DCL과 같은 유형의 작업을 통해 데이터베이스 안에 그릇을 만들고 그 안에 데이터를 담거나 꺼내어 사용하는 도구다. 본 학습의 주요 내용과 이들 간의 관계는 다음 그림과 같다.
DML 활용
한 개의 테이블에 대해 데이터를 삽입, 수정, 삭제하고 행을 조회하는 DML(Data Manipulation Language) 명령문을 작성할 수 있다.
필요 지식
1. DML 개요
1. DML 의미
데이터를 조작하는 명령어를 DML(Data Manipulation Language)이라고 한다. 여기서 조작은 데이터 관점에서 생명 주기를 제어하는 것을 의미한다.
2. DML 유형
데이터의 생명 주기 관리 및 활용을 위해 사용하는 DML 명령어는 다음과 같다.
2. DML 명령문
1. 데이터 삽입(INSERT)
데이터를 삽입하기 위한 명령어로 다음과 같이 두 가지 형태의 명령문 형식을 제공한다. 이때 데이터 삽입 결과로 하나의 레코드가 추가된다. 따라서 삽입에 사용되는 정보는 하나의 레코드를 충분히 묘사해야 한다.
2. 데이터 조회(SELECT)
데이터의 내용을 조회할 때 사용하는 명령어이다. 가장 많이 사용되는 SQL 명령어로서, 다른 DML 명령어와 같이 사용되어 SQL의 활용을 풍부하게 한다. SELECT 명령어의 기본형식은 다음과 같다.
SELECT [OPTION] columns FROM table [WHERE 절] ;
SELECT 문에 사용되는 각 정보는 다음과 같다.
3. 데이터 수정(UPDATE)
데이터를 수정할 때 다음과 같은 형태의 UPDATE 명령문을 사용한다.
UPDATE table SET column1 = value1, column2 = value2, ... [WHERE 절] ;
UPDATE 명령문은 보통 WHERE 절을 통해 어떤 조건이 만족할 경우에만 특정 컬럼의 값 을 수정하는 용도로 많이 사용된다.
4. 데이터 삭제(DELETE)
레코드를 삭제할 때 다음과 같은 형태의 DELETE 명령문을 사용한다.
DELETE FROM table [WHERE 절] ;
조건절 없이 DELETE를 사용하는 경우, 테이블 전체가 한 번에 삭제되는 위험이 있다.
-NCS 학습모듈 (LM2001020413_16v3)
'스마트웹 개발 > SQL활용' 카테고리의 다른 글
02.고급 SQL 작성하기 (0) | 2021.05.18 |
---|---|
01-2.DCL활용 (0) | 2021.05.18 |