뷰 생성 및 관리

뷰는 query 결과를 테이블로 나타냅니다. 테이블을 사용할 수 있는 곳에서는 대개 뷰를 사용할 수 있습니다. 여러 다른 테이블에 저장된 정보에 자주 액세스해야 하는 경우 뷰를 사용하면 편리합니다.

참조:

뷰 생성

뷰를 생성하려면 SQL Developer 툴 뷰 생성이나 DDL 문 CREATE VIEW를 사용합니다.

이 항목에서는 이 두 방법을 모두 사용하여 다음 뷰를 만드는 방법을 보여 줍니다.

참조:

자습서: 뷰 생성 툴을 사용하여 뷰 생성

이 자습서에서는 뷰 생성 툴을 사용하여 SALESFORCE 뷰를 작성하는 방법을 보여 줍니다.

뷰 생성 툴을 사용하여 SALESFORCE 뷰를 생성하는 단계:

  1. Connections(연결) 프레임에서 hr_conn을 확장합니다.

  2. 스키마 객체 유형 목록에서 를 마우스 오른쪽 단추로 누릅니다.

  3. 선택 항목 목록에서 새 뷰를 누릅니다.

    [뷰 생성] 창이 열리고 새 뷰의 기본값이 표시됩니다.

  4. [스키마]에 대해 기본값 HR을 사용합니다.

  5. [이름]에 SALESFORCE를 입력합니다.

  6. [SQL 질의] 창이 표시되지 않으면 SQL 질의 탭을 누릅니다.

  7. [SQL 질의] 창의 [SQL 질의] 필드에서 다음을 수행합니다.

    • SELECT 뒤에 다음을 입력합니다.

      FIRST_NAME || ' ' || LAST_NAME "Name", SALARY*12 "Annual Salary"
      
    • FROM 뒤에 다음을 입력합니다.

      EMPLOYEES WHERE DEPARTMENT_ID = 80
      
  8. 구문 확인을 누르십시오.

  9. 구문 결과(Syntax Results)에서 메시지가 No errors found in SQL가 아니면 단계 7로 돌아가 질의에서 구문 오류를 수정합니다.

  10. 확인을 누릅니다.

    SALESFORCE 뷰가 생성됩니다. 이를 보려면 연결 프레임에서 뷰를 확장합니다.

    이 뷰를 생성하기 위한 CREATE VIEW 문을 보려면 해당 이름을 선택하고 SQL 탭을 누릅니다.

참조: SQL Developer를 사용하여 뷰를 생성하는 방법에 대한 자세한 내용은 Oracle SQL Developer User's Guide를 참조하십시오.

CREATE VIEW 문을 사용하여 뷰 생성

이 예제에서는 CREATE VIEW 문을 사용하여 네 개의 테이블을 조인하는 EMP_LOCATIONS 뷰를 생성하는 방법을 보여줍니다.

예 4-3의 CREATE VIEW 문은 네 개의 테이블을 조인하는 EMP_LOCATIONS 뷰를 생성합니다. 조인에 대한 자세한 내용은 "여러 테이블에서 데이터 선택"을 참조하십시오.)

예제 4-3 CREATE VIEW를 사용하여 EMP_LOCATIONS 뷰 생성

CREATE VIEW EMP_LOCATIONS AS
SELECT e.EMPLOYEE_ID,
e.LAST_NAME || ', ' || e.FIRST_NAME NAME,
  d.DEPARTMENT_NAME DEPARTMENT,
  l.CITY CITY,
  c.COUNTRY_NAME COUNTRY
FROM EMPLOYEES e, DEPARTMENTS d, LOCATIONS l, COUNTRIES c
WHERE e.DEPARTMENT_ID = d.DEPARTMENT_ID AND
 d.LOCATION_ID = l.LOCATION_ID AND
 l.COUNTRY_ID = c.COUNTRY_ID
ORDER BY LAST_NAME;

결과:

View EMP_LOCATIONS created.

참조: CREATE VIEW 문에 대한 자세한 내용은 Oracle Database SQL Language Reference를 참조하십시오.

뷰의 Query 변경

뷰에서 질의를 변경하려면 DDL 문 CREATE VIEW를 OR REPLACE 절과 같이 사용합니다.

예 4-4의 CREATE OR REPLACE VIEW 문은 SALESFORCE 뷰의 질의를 변경합니다.

예제 4-4 SALESFORCE 뷰의 질의 변경

CREATE OR REPLACE VIEW SALESFORCE AS
SELECT FIRST_NAME || ' ' || LAST_NAME "Name",
  SALARY*12 "Annual Salary"
  FROM EMPLOYEES
WHERE DEPARTMENT_ID = 80 OR DEPARTMENT_ID = 20;

결과:

View SALESFORCE created.

참조: Oracle Database SQL Language Reference와 OR REPLACE 절을 사용한 CREATE VIEW에 대한 자세한 내용은

튜토리얼: 이름 바꾸기 도구를 사용하여 뷰 이름 변경

이 자습서에서는 이름 바꾸기 도구를 사용하여 SALESFORCE 뷰의 이름을 변경하는 방법을 보여줍니다.

뷰의 이름을 변경하려면 SQL Developer 툴 이름 바꾸기 또는 RENAME 문을 사용합니다. 이에 상응하는 DDL 문은 다음과 같습니다.

RENAME SALESFORCE to SALES_MARKETING;

Rename 툴을 사용하여 SALESFORCE 뷰를 변경하는 단계:

  1. Connections(연결) 프레임에서 hr_conn을 확장합니다.

  2. 스키마 객체 유형 목록에서 를 확장합니다.

  3. 뷰 목록에서 SALESFORCE를 마우스 오른쪽 버튼으로 누릅니다.

  4. 선택 항목 목록에서 이름 바꾸기를 선택합니다.

  5. [이름 바꾸기] 창의 [새 뷰 이름] 필드에 SALES_MARKETING을 입력합니다.

  6. 적용을 누릅니다.

  7. [확인] 창에서 확인을 누릅니다.

참조: Oracle Database SQL Language Reference에서 RENAME 문에 대한 자세한 내용을 참조하십시오.

뷰 삭제

뷰를 삭제하려면 SQL Developer Connections 프레임과 DROP 툴 또는 DDL 문 DROP VIEW를 사용합니다 .

다음 자습서에서는 Connections 프레임 및 Drop 툴을 사용하여 SALES_MARKETING 뷰를 삭제하는 방법을 보여 줍니다("자습서: 이름 바꾸기 툴을 사용하여 보기 이름 변경"). 이에 상응하는 DDL 문은 다음과 같습니다.

DROP VIEW SALES_MARKETING;

Drop 툴을 사용하여 SALES_MARKETING 뷰를 삭제하는 단계:

  1. Connections(연결) 프레임에서 hr_conn을 확장합니다.

  2. 스키마 객체 유형 목록에서 를 확장합니다.

  3. 뷰 목록에서 SALES_MARKETING을 마우스 오른쪽 단추로 누릅니다.

  4. 선택 항목 목록에서 삭제를 누릅니다.

  5. [삭제] 창에서 적용을 누릅니다.

  6. [확인] 창에서 확인을 누릅니다.

참조: DROP VIEW 문에 대한 자세한 내용은 Oracle Database SQL Language Reference를 참조하십시오