1. DML (Data Manipulation Language)

- 데이터 조작어

- 데이터의 삽입, 수정, 삭제, 조회 등을 수행

- INSERT(데이터 생성),  UPDATE(데이터 수정), DELETE(데이터 삭제), SELECT(데이터 조회)

2. INSERT

- 테이블에 데이터를 입력할 경우 사용

- 입력할 데이터는 반드시 컬럼의 순서와 개수가 일치해야 함

INSERT INTO 테이블명 VALUES (컬럼=값);

[캡쳐 1] INSERT INTO ~ VALUES ~ 결과

2.1) 특정 컬럼 INSERT

- 특정 컬럼을 지정해 데이터를 입력할 경우

- 컬럼명입력한 데이터의 순서와 개수가 일치해야 함

INSERT INTO 테이블명(컬럼1, 컬럼2, 컬럼3,......) VALUES(컬럼1의 값, 컬럼2의 값,....);

[캡쳐 2] 특정 컬럼을 지정하여 데이터 입력

2.2) 특정 컬럼 SET

- 특정 컬럼을 지정해 데이터

INSERT INTO 테이블명 SET
컬럼명1=데이터1, 컬럼명2=데이터2...;

[캡쳐 3] SET을 이용한 데이터 입력

3. SELECT

- 테이블 내 데이터를 조회할 때 사용

- 테이블에 저장된 칼럼 순서대로 조회

SELECT [ALL | DISTINCT] 속성이름 FROM 테이블이름
[WHERE 조건]
[GROUP BY 속성이름]
[HAVING 검색조건]
[ORDER BY 속성이름 [ ASC | DESC]

[캡쳐4] SELECT 수행 결과

- 각 절에 다양한 조건을 줌으로써 목적에 맞는 데이터를 조회할 수 있음

[캡쳐 5] USER 테이블에서 name이 A인 사람의 studentID 조회

4. UPDATE

- 테이블 내 데이터를 변경할 때 사용

UPDATE 테이블명 SET 변경할 컬럼=변경할 데이터 WHERE 변경하고자하는 조건

[ 캡쳐 6] UPDATE 수행 결과

5.DELETE

- 테이블내 저장된 데이터를 삭제할 때 사용

DELETE FROM 테이블명 WHERE 삭제할 컬럼명=조건;

[캡쳐 7] DELETE 수행 결과

'데이터베이스 > SQL 문법' 카테고리의 다른 글

SQL_DCL(Data Control Language)  (0) 2022.09.13
SQL_DDL(Data Definition Language)  (0) 2022.09.01
필드명 타입 설명
StudentID INT 학번
Name VARCHAR(20) 성명
ID VARCHAR(20) 계정명
PW VARCHAR(20) 비밀번호

[캡쳐 1] DB 생성 및 사용

1. DDL (Data Definition Language)

- 데이터 정의어

- 역할 : 데이터베이스를 정의하는 언어로, 데이터 생성, 수정, 삭제 등 데이터 전체 골격을 결정

- 사용자 : 데이터베이스 설계자, 관리자

1.1) CREATE

- 데이터베이스와 테이블 생성

CREATE TABLE 테이블이름
(
    필드이름1 필드타입1,
    필드이름2 필드타입2,
    ...
)

[캡쳐 2] user 테이블 생성

- 첫번째 값인 studentID는 int형이며, NULL 값을 가질 수 없음(not null). 또한 기본키로 지정(primary key)

- name(성명), pw(비밀번호)는 varchar(가변 자료형)

[캡쳐 3] 구조 확인

1.2) ALTER

- 데이터베이스와 테이블의 내용 수정

ALTER TABLE [테이블명] ADD COLUMN [추가할컬럼명] [컬럼타입] DEFAULT [기본값] [컬럼위치]
 // [컬럽위치] after : 특정 필드 뒤, first : 맨 처음의 필드

필드 삭제 : ALTER TABLE 테이블명 DROP 삭제할 필드명;
필드 타입 수정 : ALTER TABLE 테이블명 MODIFY 필드명 타입;
테이블명 변경 : ALTER TABLE 이전테이블명 RENAME 새테이블명;

[캡쳐 4] user 테이블에 id 칼럼 추가

1.3) DROP

- 데이터베이스와 테이블 삭제

DROP TABLE 테이블명;

[캡쳐 5] 임의 테이블 생성 후 삭제

1.4) TRUNCATE

- 데이터베이스와 테이블 삭제

TRUNCATE TABLE 테이블명;

[캡쳐 6] TRUNCATE 명령 수행 결과

참고

DROP VS TRUNCATE VS DELETE

구분 DROP TRUNCATE DELETE
분류 DDL DDL DML
처리 속도 빠름 빠름 느림
삭제 방식 데이터베이스 또는 테이블 전체
저장되어 있는 데이터도 삭제
데이터베이스 또는 테이블이 아닌
저장되어 있는 데이터를 삭제
WHERE절을 사용해
특정 데이터를 골라서 삭제
복구 자동 COMMIT이 수행되어
복구 불가(ROLLBACK 불가)
자동 COMMIT이 수행되어
복구 불가(ROLLBACK 불가)
삭제한 데이터에 대하여
COMMIT 명령 수행 전이라면
ROLLBACK 명령을 통해 복구 가능

 

- MySQL 설치 참고

 

[Linux] 우분투에 MySQL 설치하기

1. MySQL 설치 전 준비 관리자 계정으로 접속하기 su - 패키지 리스트 업데이트 apt update 2. MySQL 설치 다음 명령어를 통해 데이터베이스 설치하기 apt install mysql-server -y 3. MySQL 설정하기 다음 명..

pinggoopark.tistory.com

'데이터베이스 > SQL 문법' 카테고리의 다른 글

SQL_DCL(Data Control Language)  (0) 2022.09.13
SQL_DML(Data Manipulation Language)  (0) 2022.09.05

1. 데이터베이스(DataBase)

- 여러 사람들이 공유하고 사용할 수 있도록 통합 관리되는 데이터의 집합.

- 자료를 구조화하고, 중복을 제거하여 효율적인 처리가 가능하도록 관리됨.

- 데이터베이스 관리 시스템(DBMS : Databaase Management System_데이터베이스를 관리하고 운영하는 소프트웨어)을 통해 관리됨.

- SQL을 이용해 데이터를 조작함.

- 조직의 운영에 필요한 정보를 저장하고 있기에 보안에서 중요한 요소 중 하나임.

통합된 데이터
(Intergrated Data)
- 데이터가 중복되지 않음
- 효율성 문제로 인해 일부 중복을 허용하기도 함
저장된 데이터
(Stored Data)
- 컴퓨터가 접근할 수 있는 저장매체에 저장된 데이터 집합
운영 데이터
(Operational Data)
- 조직 고유의 기능을 수행하기 위해 반드시 유지해야하는 데이터
공용 데이터
(Shared Data)
- 여러 응용 시스템들이 공동으로 소유하고 유지하는 자료

[캡쳐 1] https://coding-factory.tistory.com/77

2. 특징

실시간 접근성
(Real-Time Accessibility)
- 수시적이고 비정형적인 질의(조회)에 대하여 실시간 처리에 의한 응답이 가능해야 함.
계속적인 변화
(Continuous Evolution)
- 새로운 데이터의 삽입(Insert),삭제(Delete),갱신(Update)로 항상 최신의 데이터를 유지.
동시공용
(Concurrent Sharing)
- 데이터베이스는 서로 다른 업무 또는 여러 사용자에게 동시에 공유.
내용에 의한 참조
(Content Reference)
- 사용자가 요구하는 데이터 내용으로 데이터를 찾음.

3. SQL (Structured Query Language)

- 데이터베이스에서 데이터를 정의, 조작, 제어하기 위해 사용하는 언어

- DDL(Data Definition Language) : 데이터 정의어

- DML(Data Manipulation Language) : 데이터 조작어

- DCL(Data Control Language) : 데이터 제어어

구분 설명 명령어 설명
DDL - 데이터베이스나 테이블 등을 생성, 삭제하거나 그 구조를 변경하기 위한 명령어 CREATE - 데이터베이스와 테이블 생성
ALTER - 데이터베이스와 테이블의 내용 수정
DROP - 데이터베이스와 테이블 삭제
DML - 데이터베이스에 저장된 데이터를 처리하거나 조회, 검색하기 위한 명령어 INSERT - 테이블에 새로운 레코드 추가
UPDATE - 테이블의 레코드 내용 수정
DELETE - 테이블의 레코드 삭제
SELECT - 테이블의 레코드 선택
DCL - 데이터베이스에 저장된 데이터를 관리하기 위하여 데이터의 보안성 및 무결성 등을 제어하기 위한 명령어 GRANT - 권한 부여
REVOKE - 권한 회수

 

- 참고

 

코딩교육 티씨피스쿨

4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등

tcpschool.com

+ Recent posts