SQL의 보기 유형 | SQL의 보기 [2022]

게시 됨: 2021-01-02

복잡한 SQL 쿼리를 작성하고 데이터베이스 액세스를 보호하는 것은 데이터베이스 관리자와 사용자가 항상 직면하는 문제이며 이러한 쿼리는 매우 복잡해질 수 있습니다. 원래 테이블에 프록시를 사용하면 이러한 쿼리를 단순화하는 데 도움이 됩니다. 또한 관리자가 데이터베이스에 대한 직접 액세스를 제한하려는 경우가 있습니다. 이 두 가지 경우 모두 보기를 사용할 수 있습니다.

목차

보기란 무엇입니까?

SQL에는 런타임에 컴파일되는 가상 테이블인 View라는 특수한 버전의 테이블이 있습니다. 보기는 단지 SQL 문이며 이와 관련된 데이터는 보기에 물리적으로 저장되지 않고 기본 테이블에 저장됩니다.

Swiggy, Quora, IMDB 등과 같은 애플리케이션을 빌드하는 방법을 배우십시오.

액세스를 제한해야 하는 경우 테이블의 모든 행과 열을 포함하거나 선택한 몇 개의 행과 열만 포함할 수 있습니다. 뷰를 생성하는 데 사용된 작성된 SQL 쿼리에 따라 하나 이상의 테이블에서 생성될 수 있습니다.

보기를 사용하여 사용자가 자연스럽게 찾고, 복잡한 쿼리를 단순화하고, 데이터에 대한 액세스를 제한하고, 여러 테이블의 데이터를 요약하여 보고서를 작성할 수 있도록 데이터를 구조화할 수 있습니다.

보기 관리

여기에 정의된 보기 관리와 관련된 다양한 측면이 있습니다.

보기 만들기: 보기는 "보기 만들기" 문을 사용하여 만들 수 있습니다. 뷰는 구체화된 뷰, 테이블 또는 기타 뷰를 참조하는 쿼리에 의해 정의됩니다.

보기 이름 바꾸기: 보기 이름을 바꿀 수 있으며 이제 보기의 이전 이름을 참조하는 모든 개체가 새 이름을 가져야 합니다.

보기 나열: 시스템 카탈로그 보기를 쿼리하여 SQL Server 데이터베이스의 모든 보기를 나열할 수 있습니다.

보기 제거: "보기 삭제" 문을 사용하여 기존 보기를 제거할 수 있습니다.

읽기: SQL 대 PlSQL

세계 최고의 대학 에서 온라인 소프트웨어 개발 과정 에 등록하십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.

SQL의 뷰 유형

SQL Server에는 시스템 정의 보기와 사용자 정의 보기 라는 두 가지 유형의 보기가 있습니다. 이 섹션에는 이 두 가지 유형에 대한 설명이 포함되어 있습니다.

시스템 정의 보기

시스템 정의 보기는 Tempdb, Master 및 temp와 같이 SQL Server 데이터베이스에 이미 존재하는 미리 정의된 보기입니다. 각 데이터베이스에는 고유한 속성과 기능이 있습니다.

모든 사용자 정의 보기에 대한 템플릿 데이터베이스는 마스터 데이터베이스에서 가져옵니다. 여기에는 테이블 및 기타 데이터베이스에 대한 템플릿인 미리 정의된 많은 보기가 포함되어 있습니다. 여기에는 약 230개의 미리 정의된 보기가 포함되어 있습니다.

시스템 정의 보기는 모든 사용자 정의 데이터베이스에 자동으로 첨부됩니다. 그리고 이것들은 데이터베이스, 테이블, 데이터베이스와 테이블의 모든 속성에 대한 정보를 제공합니다. 시스템 정의 보기에는 정보 스키마, 카탈로그 보기 및 동적 관리 보기의 세 가지 유형이 있습니다.

정보 스키마

SQL Server에는 20개의 서로 다른 스키마 보기가 있습니다. 테이블, 제약 조건, 열 및 뷰와 같은 데이터베이스의 물리적 정보를 표시하는 데 사용됩니다. 이 보기는 INFORMATION_SCHEMA로 시작하고 그 뒤에 보기 이름이 옵니다. INFORMATION_SCHEMA.CHECK_CONSTRAINTS는 데이터베이스에서 사용 가능한 제약 조건에 대한 정보를 수신하는 데 사용됩니다.

제약 조건은 열에 대해 특정 데이터 규칙을 따르도록 하기 위해 테이블의 특정 열에 사용됩니다. INFORMATION_SCHEMA.COLUMNS는 테이블 이름, 컬럼 이름, 컬럼의 위치, 디폴트 값 등과 같은 테이블 컬럼에 대한 정보를 수신하기 위해 사용된다. 현재 데이터베이스에 존재하는 뷰를 리턴하기 위해 INFORMATION_SCHEMA.VIEWS를 사용한다.

카탈로그 보기

이들은 SQL 서버에서 사용하는 정보를 반환하는 데 사용됩니다. 카탈로그 보기는 사용자 지정 형식의 정보를 얻고, 표시하고, 변환하는 효율적인 방법을 제공합니다. 그러나 여기에는 백업, 복제 또는 유지 관리 계획 등에 대한 정보가 포함되어 있지 않습니다. 이러한 보기는 데이터베이스의 메타데이터에 액세스하는 데 사용되며 이름과 열 이름은 설명적이므로 사용자가 예상한 것을 쿼리하는 데 도움이 됩니다.

동적 관리 보기

이들은 2005년 SQL 서버에 도입되었습니다. 관리자는 이러한 보기를 통해 문제를 진단하고, 서버 인스턴스의 상태를 모니터링하고, 성능을 조정하기 위해 서버 상태에 대한 정보를 얻을 수 있습니다. 서버 범위의 동적 관리 보기는 마스터 데이터베이스에만 저장되는 반면 데이터베이스 범위의 동적 관리 보기는 각 데이터베이스에 저장됩니다.

사용자 정의 보기

사용자가 정의한 보기 유형입니다. 사용자 정의 보기에는 단순 보기와 복합 보기의 두 가지 유형이 있습니다.

단순보기

이러한 보기는 단일 기본 테이블만 포함하거나 하나의 테이블에서만 작성할 수 있습니다. MAX(), COUNT() 등과 같은 그룹 함수는 여기에서 사용할 수 없으며 데이터 그룹을 포함하지 않습니다.

Simple View를 사용하여 DML 작업을 수행할 수 있습니다. 삽입, 삭제, 업데이트가 직접 가능하지만 Simple View는 group by, rownum과 같은 pseudocolumn, 고유한 표현식으로 정의된 열을 포함하지 않습니다. 단순 보기에는 기본 테이블의 NOT NULL 열도 포함되지 않습니다.

복합 보기

이러한 뷰는 둘 이상의 기본 테이블을 포함하거나 둘 이상의 기본 테이블에서 구성할 수 있으며 그룹 by 절, 조인 조건, order by 절을 포함합니다. 여기에서 그룹 기능을 사용할 수 있으며 여기에는 데이터 그룹이 포함됩니다. DML 작업을 수행하는 데 항상 복잡한 보기를 사용할 수는 없습니다.

삽입, 삭제 및 업데이트는 복잡한 보기에 직접 적용할 수 없습니다. 그러나 단순 보기와 달리 복합 보기는 그룹화 기준, rownum과 같은 의사 열, 식으로 정의된 고유한 열을 포함할 수 있습니다. NOT NULL 열은 단순 보기에서 선택되지 않은 동안 복합 보기에 포함될 수 있습니다.

인라인 보기 및 구체화된 보기와 같은 다른 보기가 있습니다. 인라인 뷰는 FROM 절의 하위 쿼리를 기반으로 하며 하위 쿼리는 임시 테이블을 생성하여 복잡한 쿼리를 단순화합니다.

이러한 보기는 조인 및 하위 쿼리 작업 없이 복잡한 SQL 쿼리를 작성하는 데 사용됩니다. 구체화된 뷰는 정의와 데이터까지 저장합니다. 데이터 복제본은 물리적으로 저장하여 생성됩니다. 이 보기는 전체 데이터를 재생성하는 처리 시간을 줄입니다.

읽기: 흥미로운 SQL 프로젝트 아이디어 및 주제

결론

이 문서에서는 SQL의 보기 유형에 대해 설명합니다 . SQL에서 View를 정의하고 자세히 설명하며, View를 관리하는 다양한 방식도 정의되어 있습니다. 시스템 정의 보기 및 사용자 정의 보기와 같은 SQL의 다양한 보기 유형 각 유형 아래의 다양한 하위 유형과 함께 자세히 설명됩니다.

전체 스택 소프트웨어 개발에 대해 자세히 알아보려면 upGrad & IIIT-B의 전체 스택 소프트웨어 개발 이그 제 큐 티브 PG 프로그램을 확인하십시오. 이 프로그램은 작업 전문가를 위해 설계되었으며 500 시간 이상의 엄격한 교육, 9 개 이상의 프로젝트, 및 과제, IIIT-B 동문 자격, 실질적인 실습 캡스톤 프로젝트 및 최고의 기업과의 취업 지원.

미래의 직업을 위한 준비

지금 소프트웨어 공학 석사 지원