728x90
데이터 삽입 (INSERT)
- 주의 사항
- 수정하는 속성의 속성값은 같은 도메인이어야 한다.
- 조건에 맞아 선택된 투플은 모든 수정된다.
- 한번 수정된 데이터는 복구가 안된다.
- 테이블에 저장된 데이터를 수정하기 위한 SQL명령어 : UPDATE
- UPDATE 문
- 테이블에 저장된 투플에서 특정 속성 값을 수정
- 수정할 대상이 되는 속성과 속성값은 SET 다음에 지정
- WHERE 절에서 제시된 조건을 만족하는 투플만 수정의 대상
- 기본형식
UPDATE 테이블이름
SET 속성이름1=값1, 속성이름2=값2, ...
[ WHERE 조건 ] ;
- Items 테이블에 있는 모든 제품의 단가(price)가 5% 인상된 경우, 인상된 내용을 반영하시오.
- 테이블내의 모든 투플에 적용되는 경우, WHERE 절을 사용하지 않는다.
- 단가(price)를 5% 인상 : price = price * 1.05;
UPDATE items
SET price = price * 1.05;
- 수정 전 데이터
- 수정 후 데이터
- 이름이 ‘이남이’인 고객이 2015-06-01에 구입한 ‘E06’ 제품의 개수를 10개로 수정하시오.
- Customer 테이블
- Orders 테이블
- 조건 만들기
- 조건1 : date=’2015-06-01’
- 조건2 : item=’E06’
- 조건3 : customer IN ( SELECT account FROM customer WHERE name=’이남이’ )
- 전체 조건 : 조건1 AND 조건2 AND 조건3
UPDATE orders
SET qty = 10
WHERE item='E06' AND date='2015-06-01'
AND customer IN ( SELECT account
FROM customer
WHERE name='이남이' );
데이터 삭제(DELETE)
- 주의 사항
- 다른 테이블에서 참조하는 테이블의 투플을 삭제하는 것인 거절될 수 있다.
- 삭제할 투플을 정확하게 선택할 수 있는 조건을 명시하여야 한다.
- 선택된 투플은 모두 삭제된다.
- 선택 조건이 없을 경우, 테이블 내의 모든 투플이 삭제된다.
- 삭제된 투플은 복구가 안된다.
- 테이블에 저장된 데이터를 삭제하기 위한 SQL명령어 : DELETE
- DELETE 문을 사용하여 모든 데이터를 삭제시 테이블 자체는 삭제되지 않는다.
- DROP TABLE 로 테이블 삭제하는 것과 다름
- 모든 데이터는 삭제되어도 AUTO_INCREMENT 로 지정된 속성의 현재 값은 변화되지 않음
- WHERE 절에서 제시한 조건을 만족하는 투플만 선택
- 테이블로부터 선택한 투플을 삭제
- WHERE 절을 생략하면 테이블 내의 모든 투플을 삭제
- 기본형식
DELETE FROM 테이블이름
[ WHERE 조건 ] ;
- Orders 테이블에서 2015-06-10 일에 주문한 모든 주문을 삭제하시오.
DELETE FROM orders
WHERE date=’2015-06-10’;
- 삭제 후
- DELETE 문을 사용하여 orders 테이블의 모든 데이터를 삭제하시오.
DELETE FROM orders ;
728x90
'프로그래밍 > Database' 카테고리의 다른 글
MySQL 제어 함수 - CASE (0) | 2020.04.27 |
---|---|
MySQL의 내장 함수 (0) | 2020.04.27 |
데이터 삽입 (INSERT) (0) | 2020.04.18 |
검색 데이터 제한(Limit) (0) | 2020.04.18 |
별명 (Alias) 만들기 (0) | 2020.04.18 |