Chapter 3: Modifying Data
참조 : The Programmer's Guide to SQL
- 새로운 값 추가하기
- INSERT INTO 테이블 (컬럼들) VALUES (값들);
- INTO는 MySQL에서는 생략가능 하지만, SQL-99 스팩이며 오라클에서는 필수다.
- 컬럼명을 안 써도 되는 경우
- RDBMS가 값을 반드시 자동 생성 해주는 경우. ex) 주키 컬럼
- RDBMS가 갑을 자동으로 채워줄 수 있는 경우. ex) 기본값을 설정해둔 컬럼
- 컬럼이 timestamp 타입임 경우. RDBMS가 알아서 현재 날짜와 시각을 넣어 줌.
- NULL을 허용하는 컬럼.
- 기본값으로 전부 채우기
- INSERT INTO Author DEFAULT VALUES;
- 여러 줄 한 번에 넣기
- VALUES 대신에 SELECT 문 사용.
- 수정하기
- UPDATE 테이블 SET 컬럼 = 값, 컬럼 = 값 WHERE 조건;
- 만약에 WHERE 절 빼면 해당 테이블의 모든 컬럼이 바뀌게 되니까 UPDATE 문 실행하기 전에 UPDATE를 SELECT로 바꿔서 변경 대상을 확인하는 것이 좋다.
- 삭제하기
- DELETE FROM 테이블 WHERE 조건;
- FROM도 선택적인데 사용하는 것이 좋다.
- 주키 컬럼을 조건절에 사용하는 것이 좀 더 안전하다. 유일한 컬럼을 지칭하니까.
- TRUNCATE TABLE 테이블;
- DELETE FROM과는 달리 삭제에 대한 로그를 남기지 않아서 좀 더 빠르다.
- 대신 롤백이 불가능하다.