코이_CO2
LIVING IS DYING
코이_CO2
전체 방문자
오늘
어제
  • 분류 전체보기 (45)
    • TIL ⚓️ (4)
      • OT주차 (1)
      • 1주차_풀스택 미니 프로젝트 (0)
      • 1주차_언어 기초(Java) (0)
      • 2주차_프로그래밍 기초 (1)
      • 3주차_주특기 입문(Spring) (0)
      • 4주차_주특기 숙련(Spring) (2)
    • WIL ⚓️ (0)
      • OT주차 (0)
      • 1주차_언어 기초(Java) (0)
      • 2주차_프로그래밍 기초 (0)
      • 3주차_주특기 입문(Spring) (0)
      • 4주차_주특기 숙련(Spring) (0)
    • Java의 정석 📖 (4)
      • Chapter 1. 자바를 시작하기 전에 (3)
      • Chapter 2. 변수 (0)
      • Chapter 3. 연산자 (0)
      • Chapter 4. 조건문과 반복문 (1)
    • Programmers (7)
      • Lv. 1 (7)
    • 혼자 공부하는 자바 📖 (8)
      • Chapter 05 참조 타입 (0)
      • Chapter 06 클래스 (3)
      • Chapter 07 상속 (1)
      • Chapter 08 인터페이스 (1)
      • Chapter 09 중첩 클래스 & 인터페이스 (0)
      • Chapter 10 예외 처리 (1)
      • Chapter 12 스레드 (1)
    • Java (2)
    • Spring (1)
    • Python (2)
    • Mysql (4)
    • Machine Learning (6)
      • 추측 통계 (2)
    • Data Analysis (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Spring Security
  • 개발일지
  • LV1
  • 자바
  • 프로그래머스
  • PYTHON
  • spring
  • 혼자 공부하는 자바
  • 주특기 심화주차
  • sql
  • 개발자
  • 배열
  • DTO
  • 게시판 프로젝트
  • TIL/WIL
  • HTML
  • 스프링
  • 스터디
  • programmers
  • 코딩
  • 부트스트랩
  • 하루기록
  • TIL
  • jwt
  • 파이썬
  • 웹개발 종합반
  • java
  • 항해99
  • 혼자공부하는자바
  • CRUD

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
코이_CO2
Mysql

[SQL] CRUD 사용

[SQL] CRUD 사용
Mysql

[SQL] CRUD 사용

2022. 8. 11. 16:49

CRUD

C(create), R(read) U(update), D(delete) 를 묶어서 일컫는 말

- 대부분의 컴퓨터 SW가 갖는 기본적인 데이터 처리 기능

- 사용자 인터페이스가 갖추어야 할 기능(정보의 참조/검색/갱신)

 

 

SQL에서의 CRUD

이름 기능 SQL
Create 생성 INSERT
Read 조회 SELECT
Update 수정(또는 갱신) UPDATE
Delete 삭제 DELETE

 

 

Create : Insert 문으로 데이터 입력

(1) 단일 로우 입력 INSERT문

- INSERT 한 문장을 실행하면 1개 ROW 입력

insert into 테이블 (컬럼1, 컬럼2, ...)
            values (값1, 값2, ...);

: 컬럼과 값은 개수와 데이터 타입이 일치해야 함

: 컬럼 목록 생략 시 테이블의 모든 컬럼에 값 입력

: Not Null 속성 컬럼에는 값을 반드시 입력

: 기본 키 컬럼에는 중복 값 입력 불가 

 

 

(2) 다중 로우 입력 INSERT문

- INSERT 한 문장을 실행하여 여러 개의 ROW 입력

insert into 테이블 (컬럼1, 컬럼2, ...)
values [row](값1, 값2, ...),
       [row](값1, 값2, ...),
       ...;

 

 

(3) SELECT문이 결합된 INSERT문

- SELECT문이 반환한 결과 값을 INSERT

insert into 테이블 (컬럼1, 컬럼2, ...)
select ...
  from ...
 where ...;



 

UPDATE : Update 문으로 데이터 수정

(1) 단일 테이블 데이터 수정

- 테이블에 저장된 데이터 수정

update 테이블
   set 컬럼1 = 값1,
       컬럼2 = 값2, ...
 where ...
 order by ...
 limit ...;

 

- 오류 발생 시 Safe Updates 설정 변경

: MYSQL Workbench는 WHERE 절이 없는 UPDATE와 DELETE문을 실행하면 오류가 발생하는 게 기본 설정

Edit → Preferences → SQL Editor → Safe Updates 체크 해제
Query → Reconnect to Server(재접속)  

 

 

(2) 다중 테이블 데이터 수정

- 2개 이상의 테이블에서 데이터 수정

update 테이블1, 테이블2, ...
   set 컬럼1 = 값1,
       컬럼2 = 값2, ...
 where 조건;

 

 

(3) 입력과 수정을 동시에 처리

- 신규로 데이터를 입력하며 동시에 수정하는 방법

- 조건을 확인하여 이미 대상 테이블에 값이 있으면 수정하고 없으면 입력

- ON DUPLICATE KEY UPDATE

: 기본 키 값 충돌이 발생하는 로우에서는 신규로 값을 입력하지 않고 기존에 저장된 값 변경

insert into 테이블명 (컬럼1, 컬럼2, ...)
values 절(또는 select 문)
    on duplicate key update 컬럼 = 값1, 값2, ... ;

 

 

 

DELETE : Delete 문으로 데이터 삭제

(1) 단일 테이블 데이터 삭제

- WHERE 절 조건에 맞는 단일 테이블 데이터 삭제

: where 절이 없으면 데이터 전체 삭제

- ORDER BY 절을 명시하면 해당 순서대로 데이터 삭제

- LIMIT 절로 삭제 데이터 건수 제한

delete from 테이블
 where 조건
 order by ...
 limit ...;

 

 

(2) 다중 테이블 데이터 삭제

- DELETE 와 FROM 사이에 명시한 별칭에 해당하는 테이블 데이터만 삭제

# 첫 번째 방법
delete 테이블별칭1, 테이블별칭2, ...
  from 테이블1 테이블별칭1, 테이블2 테이블별칭2, ...
 where 조건;
# 두 번째 방법
delete from 테이블별칭1, 테이블별칭2, ...
 using 테이블1 테이블별칭1, 테이블2 테이블별칭2, ...
 where 조건;

'Mysql' 카테고리의 다른 글

[MySQL] 테이블 및 데이터 타입  (0) 2022.08.16
[MYSQL] 데이터베이스와 SQL  (0) 2022.08.15
MAC 에서의 <MYSQL ERROR CODE: 1055>  (2) 2022.08.10
  • CRUD
  • SQL에서의 CRUD
  • Create : Insert 문으로 데이터 입력
  • UPDATE : Update 문으로 데이터 수정
  • DELETE : Delete 문으로 데이터 삭제
'Mysql' 카테고리의 다른 글
  • [MySQL] 테이블 및 데이터 타입
  • [MYSQL] 데이터베이스와 SQL
  • MAC 에서의 <MYSQL ERROR CODE: 1055>
코이_CO2
코이_CO2
나에게 찾아오는 뻔한 매일을 언제나 값지게 여길 줄 아는 내가 되기를

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.