INSERT - table에 row를 삽입한다.
- insert할 때에는 user가 해당 table에 insert할 수 있는 권한이 있어야 한다.
- 사용 예 :
INSERT INTO dept
VALUES (50, 'Local Branch', 'Korea');
해설 : 위 예는 dept table에 삽입할 column name을 명시하지 않았다.
이럴 때에는 현재 table에 저장된 column의 순서대로 values()에 명시한 data가 저장된다.
즉 모든 column에 값을 insert할 때 사용한다.
* character와 date값은 ' '로 묶는다.
일부 column의 값만 insert할 때에는 table name이후에 column name을 명시한다.
- NULL 값 insert하기
1. Implicit
INSERT INTO dept(deptno, dname)
VALUES (60, 'HQs');
해설 : dept table의 dept, dname column외의 다른 column은 모두 null이 insert된다.
2. Explicit
INSERT INTO dept
VALUES (60, 'HQs', NULL);
INSERT INTO dept
VALUES (60, 'HQs', '');
해설 : NULL을 입력할 column의 위치에 NULL 또는 ''로 insert한다.
- pseudocolumns와 function 사용하기
USER : 현재 사용자 이름
SYSDATE : 현재 날짜와 시간
ROWID : row의 위치정보 ( data를 빨리 찾기 위해 index에 저장된다. )
( data의 address로써, File->Block->row 단위로 찾아가기 위한 정보이다.)
사용 예 :
INSERT INTO emp (empno, ename, hiredate)
VALUES (9000, USER, SYSDATE);