중복 가능성 :
성능에서 뷰와 테이블의 차이
SQL에서 뷰와 테이블의 주요 차이점은 무엇입니까? 테이블 대신 뷰를 사용하면 어떤 이점이 있습니까?
중복 가능성 :
성능에서 뷰와 테이블의 차이
SQL에서 뷰와 테이블의 주요 차이점은 무엇입니까? 테이블 대신 뷰를 사용하면 어떤 이점이 있습니까?
답변:
테이블은 데이터를 포함하고, 뷰는 SELECT
데이터베이스에 저장된 명령문 일뿐입니다 (데이터베이스에 따라 다소).
뷰의 장점은 여러 테이블의 데이터를 조인하여 새로운 뷰를 만들 수 있다는 것입니다. 급여가있는 데이터베이스가 있고 복잡한 통계 쿼리를 수행해야한다고 가정 해보십시오.
복잡한 쿼리를 데이터베이스에 항상 보내지 않고 쿼리를보기로 저장 한 다음 SELECT * FROM view
SELECT
는 결과를 리턴 하는 명령문 일뿐 입니다.
테이블 : 테이블은 RDBMS에 데이터 및 정보를 저장하기위한 예비 스토리지입니다. 테이블은 관련 데이터 항목의 모음이며 열과 행으로 구성됩니다.
보기 : 보기는 내용이 쿼리로 정의 된 가상 테이블입니다. 인덱싱되지 않으면 뷰는 데이터베이스에 저장된 데이터 값 세트로 존재하지 않습니다. 테이블에 비해 장점은
뷰는 가상 테이블입니다. 뷰는 테이블처럼 행과 열로 구성됩니다. 뷰와 테이블의 차이점은 뷰는 다른 테이블 (또는 뷰) 위에 구축 된 정의이며 데이터 자체를 보유하지 않는다는 것입니다. 기본 테이블에서 데이터가 변경되면 동일한 변경 내용이 뷰에 반영됩니다. 단일 테이블 또는 다중 테이블 위에 뷰를 빌드 할 수 있습니다. 다른 뷰 위에 구축 할 수도 있습니다. SQL Create View 페이지에서 뷰를 작성하는 방법을 볼 수 있습니다.
뷰는 다음과 같은 장점을 제공합니다.
사용 편의성 : 뷰는 최종 사용자로부터 데이터베이스 테이블의 복잡성을 숨 깁니다. 본질적으로 뷰는 데이터베이스 테이블 위에서 추상화 계층으로 생각할 수 있습니다.
공간 절약 : 뷰는 실제 데이터를 저장하지 않기 때문에 저장할 공간이 거의 없습니다.
추가 데이터 보안 :보기에는 테이블에 특정 열만 포함될 수 있으므로 중요하지 않은 열만 포함되어 최종 사용자에게 노출됩니다. 또한 일부 데이터베이스는보기에 다른 보안 설정을 허용하므로 민감한 데이터가 눈에 띄지 않도록 숨 깁니다.
보기에는 데이터베이스와 직접적 또는 물리적 관계가 없습니다. 뷰를 통한 수정 (예 : 삽입, 업데이트, 삭제)은 허용되지 않습니다. 논리적 테이블 세트 일뿐입니다.
뷰는 데이터베이스 공간을 항상 없애는 데 도움이됩니다. 테이블을 작성하면 테이블이 데이터베이스에 저장되고 존재하는 동안 일부 공간을 보유합니다. 대신 쿼리가 실행될 때 뷰가 사용되므로 DB 공간이 절약됩니다. 다른 테이블을 조인 할 때마다 항상 큰 테이블을 만들 수는 없지만 공간을 절약하기 위해 테이블이 얼마나 큰지에 따라 다릅니다. 따라서 런타임에 다른 테이블을 조인하여 테이블을 일시적으로 생성하십시오. 전문가 여러분, 제가 틀렸다면 정정 해주세요.