Sunmoon_BIT/ORACLE SQL 2010. 2. 22. 23:34

데이터의 조회 : SELECT
데이터의 삭제 : DELETE
데이터의 저장 : INSERT(신규 데이터 입력) / UPDATE(기존 데이터 수정)
[[ SELECT 문 ]]
<구문형식>
SELECT 컬럼1,컬럼2...
FROM    테이블1,테이블2, ...
WHERE  조건들;

예) SELECT last_name,first_name
     FROM  employees
     WHRER  hire_date >= '2006-01-01';
->employees테이블에서 hire_date가 2006-01-01이상인 데이터의 last_name과first_name을 조회. 
[[ INSERT 문 ]]
<구문형식 1>
INSERT INTO 테이블명1 (컬럼1_1,컬럼1_2,...)
VALUES  (컬럼1_1 값,컬럼1_2 값, ...);
<구문형식 2>
INSERT INTO 테이블명1
VALUES  (컬럼1_1 값,컬럼1_2값,...);
->컬럼 리스트와 그 컬럼에 들어갈 값의 순서는 정확하게 맞아야한다.
->두번째 유혈처럼 컬럼 리스트가 생략이 가능한다 이런 경우에는  테이블에 있는 모든 컬럼에 데이터를 넣는 의미
이므로 VALUE절에 컬럼의 값 중 단 하나라도 없으면 류가 발생
<구문형식 2>
INSERT INTO 테이블명1(컬럼1,컬럼2,...)
SELECT 컬럼2_1,컬럼2_2,...
FROM  테이블2
WHERE ...;
->제 3의 테이블에 있는 데이터를 선택해서 새로운 데이터를 넣는 형태
[[ UPDATE 문 ]]
<구문형식>
UPDATE  테이블명
SET  변경컬럼1 = 변경하고자 하는 값,
        변경컬럼2 = 변경하고자 하는 값.
        ...
WHERE  조건절 ...;
->변경하고자 하는 테이블과 컬럼, 그리고 변경값을 나열해 주면된다.
->INSERT문처럼 SELECT문이 와서 제 3의 테이블에 있는 컬럼의 값으로 변경가능하다.
->WHERE절을 명시해서 조건이 일치하는 데이터들만 갱신할 수 있다. 생략할 경우에는 테이블 전체 데이터가 변경된다.
[[  DELETE 문  ]]
<구문형식>
DELETE [FROM] 테이블
WHERE  조건...; 
->데이터를 삭제한다는것은 테이블의 로우를 없애는 것이다.
->WHERE로 특정 조건에 맞는 데이터만 삭제. WHERE절을 생략하면 테이블 전체 데이터가 삭제된다.
[[  COMMIT 문  ]]
만약 WHERE절을 명시하지 않고 DELETE문을 실행하면 테이블에 있는 모든 데이터가 삭제된다.
이러한 실수를 예방하기 위해 INSERT,UPDATE,DELETE문을 실행하더라고 곧바로 데이터가 변경되지 않고
실제 데이터의 변경은 COMMIT문장을 실행하였을때 데이터파일에 적용된다.
<구문형식>
COMMIT [WORK] [TO SAVEPOINT savepoint_name];
->[]표시괸 부분은 생략이 가능하다. 즉 위의 구문이나 'COMMIT나 동일한 효과이다.
->SAVEPOINT는 특정 시점까지 작업한 내용을 반영할 경우 사용.
->COMMIT으로 반영되는 데이터는 이전 COMMIT이나 ROLLBACK을 실행한 시점부터 현재 COMMIT을 실행하는 동안에 이루어진 내용을 반영.
[[  ROLLBACK 문  ]]

COMMIT와는 반대의 개념으로 변경된 데이터들을 변경 전 상태로 되돌리는 역활을 한다.
원하닌 않는 데이터까지 삭제했을 경우 ROLLBACK문을 실행하면 이전 ROLLBACK이나 COMMIT가 실행된 시점
이후에 변경된 사항은 모두 원상태로 되돌아간다. 즉 취소의 개념이다
<구문형식>
ROLLBACK [WORK] [TO SAVEPOINT savepoint_name];

'Sunmoon_BIT > ORACLE SQL' 카테고리의 다른 글

ORACLE TABLESPACE 확인  (0) 2012.06.28
데이터베이스에 XML파일 저장하기  (0) 2010.04.27
DataBase 검색 [ 검색 쿼리문]  (0) 2010.04.26
LOGICAL OPERATORS  (0) 2010.02.24
: