[오라클로 배우는 데이터베이스 입문] 10. 데이터를 추가, 수정, 삭제하는 데이터 조작어
1. 테이블 생성하기 - 특정 테이블에 데이터를 새로 추가할 때 INSERT문 사용
- 테이블에 데이터를 추가하는 INSERT문
INSERT INTO 테이블 이름[(열1,열2,...,열N)] - 새로운 데이터를 입력할 대상 테이블과 열을 입력 ※ 열 지정 생략가능(단, 열 개수나 자료형, 길이는 맞춰야 함) VALUES (열1에 들어갈 데이터, 열2에 들어갈 데이터,...,열N에 들어갈 데이터); - INSERT INTO에서 지정할 테이블의 열 순서와 자료형에 맞는 입력 데이터 지정 |
# INSERT문 오류가 발생했을 때
-INSERT문에서 지정한 열 개수와 각 열에 입력할 데이터 개수가 일치하지 않거나 자료형이 맞지않는 경우, 열 길이를 초과하는 데이터를 지정하는 경우 등
- 테이블에 NULL 데이터 입력하기
INSERT문으로 새로운 데이터 추가 시 특정 열에 데이터가 확정되지 않거나 넣을 필요가 없는 경우 NULL을 사용
○ NULL의 명시적 입력(NULL 혹은 빈 공백 문자열로 입력)
○ NULL의 암시적 입력(아예 입력하지 않는 방법)
- 테이블에 날짜 데이터 입력하기
# 유의점: 날짜 데이터 형식은 년/월/일 순으로 입력해야 함.
- 서브쿼리를 사용하여 한 번에 여러 데이터 추가하기
# INSERT문에서 서브쿼리 사용할 때 유의점
- VALUES절은 사용하지 않는다
- 데이터가 추가되는 테이블의 열 개수와 서브쿼리의 열 개수가 일치해야 한다
- 데이터가 추가되는 테이블의 자료형과 서브커리의 자료형이 일치해야 한다
2. 테이블에 있는 데이터 수정하기
- 데이터 내용을 수정 할 때 쓰는 UPDATE문
UPDATE [변경할 테이블] SET [변경할 열1]=[데이터], [변경할 열2]=[데이터], ... , [변경할 열N]=[데이터] [WHERE 데이터를 변경할 대상 행을 선별하기 위한 조건]; - 조건 생략할 경우 테이블 내 지정된 모든 열의 데이터가 변경됨 |
- 데이터 전체 수정하기
- 수정한 내용을 되돌리고 싶을 때 (ROLLBACK)
- 데이터 일부분만 수정하기
- 서브쿼리를 사용하여 데이터 수정하기
○ 여러 열을 한 번에 수정하는 경우
○ 열 하나하나를 수정하는 경우
○ WHERE절에 서브쿼리를 사용하여 데이터 수정하는 경우
- UPDATE문 사용할 때 유의점
테이블에 존재하는 데이터를 수정하기 때문에 위험성이 큰 명령어이다. 잘못된 수정을 하지 않도록 WHERE조건문은 SELECT문에 넣어 원하는 행에 적용될 지 사전 테스트 후 UPDATE할 수 있도록 해야 함
3. 테이블에 있는 데이터 삭제하기
- 테이블에 있는 데이터를 삭제하는 DELETE문
DELETE [FROM] [테이블 이름] - 데이터를 삭제할 테이블 지정 [WHERE 삭제할 대상 행을 선별하기 위한 조건식]; - 생략할 경우 테이블의 모든 데이터 삭제 |
- 데이터 일부분만 삭제하기
- 서브쿼리를 사용하여 데이터 삭제하기
- 데이터 전체 삭제하기
WHERE 조건식 사용하지 않으면 데이터 전체 삭제 가능