8-10. INSERT문에 서브 쿼리 사용 ーー MSSQL에서 지원되지 않는 기능 > 학습자료 | IOTsw_u2 U2 Project
학습자료

SQL 8-10. INSERT문에 서브 쿼리 사용 ーー MSSQL에서 지원되지 않는 기능

본문

 

예제) 

오라클 디비 예제 : INTO

(SELECT employee_id, last_name,

email, hire_date, job_id, salary,

department_id

FROM employees

WHERE department_id = 50)

VALUES (99999, 'Taylor', 'DTAYLOR', TO_DATE('07-JUN-99', 'DD-MON-RR'),

'ST_CLERK', 5000, 50);

1 row created.

☞설명) INSERT문에 서브 쿼리 사용

INSERT문의 INTO절에 테이블 이름 대신 서브 쿼리를 사용할 수 있다.

이 서브 쿼리의 select목록에는 VALUES절의 열 목록과 동일한 수의 열 목록이 있어야 한다.

예를 들어, 중복되는 사원ID를 입력할 수도 없고 널이 아닌 필수 열에 대한 값을 생략할 수도 없습니다.

INSERT문에 사용된 서브 쿼리

job_id, salary, department_id

FROM employees

WHERE department_id = 50; 는 INSERT문이 수행될 테이블을 식별하는데 사용

된 서브 쿼리의 결과를 보여준다.

예제) DML문에 WITH CHECK OPTION 키워드 사용ーー MSSQL에서 지원되지 않는 기능

․ DML문의 테이블 및 열을 식별하는데 서브 쿼리를 사용한다.

․ WITH CHECK OPTION키워드를 사용하면 서브 쿼리에 없는 행이 변경되는 것을 막을 수 있다.

오라클 디비 예제 : INTO (SELECT employee_id, last_name,

email, hire_date, job_id, salary

FROM employees

WHERE department_id = 50 WITH CHECK OPTION)

VALUES (99999, 'Smith', 'JSMITH',

TO_DATE('07-JUN-99', 'DD-MON-RR'),

'ST_CLERK', 5000);

INSERT INTO

*

ERROR at line 1 :

ORA-01402 : view WITH CHECK OPTION where-clause violation

☞설명) WITH CHECK OPTION키워드

WITH CHECK OPTION을 지정하면 INSERT, UPDATE 또는 DELETE문에서 테이블 대신 서브 쿼리가 사용된 경우 서브 쿼

리에 포함되지 않는 행이 해당 테이블에 생성되는 것을 막을 수 있습니다.

예제는 WITH CHECK OPTION키워드를 사용한다.

서브 쿼리가 부서50인 행을 식별하지만 부서ID가 SELECT목록에 없고 VALUES목록에서 이에 대한 값이 제공되어 있지 않

다.

이 행을 삽입하면 부서ID가 널인 행이 만들어지는데 이 행은 서브 쿼리의 결과에 포함되지 않는 행이다. 

댓글목록

8. 데이터 조작 DML
이어쓰기 1.A 8-1. INSERT문 구문
이어쓰기 2.B 8-2. 널 값 삽입 방법
이어쓰기 3.C 8-3. 다른 테이블에서 행 복사
이어쓰기 4.D 8-4. 명시적(Explicit) 기본 기능 개요
이어쓰기 5.E 8-5. UPDATE문 구문
이어쓰기 6.F 8-6. 서브 쿼리로 두 열 갱신
이어쓰기 7.G 8-7. 다른 테이블을 기반으로 행 갱신
이어쓰기 8.H 8-8. DELETE문 : 행 삭제
이어쓰기 9.I 8-9. 테이블 절단(제거)
이어쓰기 10.J 8-10. INSERT문에 서브 쿼리 사용 ーー MSSQL에서 지원되지 않는 기능
이어쓰기 11.K 8-11. 데이터베이스 트랜잭션
이 원글에 이어쓰기

학습자료 목록

Total 91건 1 페이지
게시물 검색

IOTsw_u2 정보

회사 . U2
주소 . 어느별 하늘 아래에 있것지요
사업자 등록번호 . 백수임 대표 . 김씨 전화 . 02-123-4567 팩스 . 팩스없음
통신판매업신고번호 . 낼할께 개인정보관리책임자 . 김씨가 알아서 함 부가통신사업신고번호 신고안함
Copyright © 2001-2013 U2. All Rights Reserved.
닫기