>  기사  >  데이터 베이스  >  mysql의 관점은 무엇입니까

mysql의 관점은 무엇입니까

藏色散人
藏色散人원래의
2021-12-28 14:43:3610964검색

mysql의 뷰는 가상 테이블이라고도 할 수 있는 mysql 데이터베이스에 데이터를 저장하기 위한 인터페이스입니다. 기본 테이블 내부의 데이터가 변경되면 그에 따라 뷰의 데이터도 변경됩니다.

mysql의 관점은 무엇입니까

이 기사의 운영 환경: Windows 7 시스템, mysql 버전 5.0, Dell G3 컴퓨터.

mysql의 뷰는 어떤가요?

mysql View

View는 mysql 데이터베이스에 데이터를 저장하기 위한 인터페이스입니다.

소개

View는 데이터를 저장하기 위한 인터페이스이며 가상 테이블이라고도 할 수 있습니다. 이 데이터는 하나 또는 여러 기본 테이블(또는 뷰)의 데이터일 수 있습니다. 사용자 정의 데이터일 수도 있습니다. 실제로는 뷰에 데이터가 저장되지 않고 기본 테이블의 데이터가 변경되면 그에 따라 뷰의 데이터도 변경됩니다.

기능

1. MySQL 뷰는 쿼리를 매우 명확하게 만들어줍니다. 뷰에 저장된 데이터는 사용자 작업을 단순화할 수 있습니다.

2. Mysql 뷰는 데이터를 더욱 안전하게 보호합니다. 뷰에 포함된 데이터는 뷰에 존재하지 않지만 여전히 기본 테이블에 존재하므로 중요한 데이터를

유형으로 효과적으로 보호할 수 있습니다.

mysql 뷰에는 MERGE, TEMPTABLE 및 UNDEFINED의 세 가지 유형이 있습니다. ALGORITHM 절이 없는 경우 기본 알고리즘은 UNDEFINED입니다. 알고리즘은 MySQL이 뷰를 처리하는 방법에 영향을 미칩니다.

1, MERGE는 뷰를 참조하는 문의 텍스트를 뷰 정의와 병합하여 뷰 정의의 특정 부분이 문의 해당 부분을 대체합니다.

2, TEMPTABLE, 뷰의 결과는 임시 테이블에 배치된 후 명령문을 실행하는 데 사용됩니다.

3, UNDEFINED, MySQL은 사용할 알고리즘을 선택합니다. 가능하다면 MERGE가 일반적으로 더 효율적이고 임시 테이블이 사용되는 경우 뷰를 업데이트할 수 없기 때문에 TEMPTABLE보다 MERGE를 선호합니다.

구문

CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
VIEW view_name [(column_list)]
AS select_statement
[WITH [CASCADED | LOCAL] CHECK OPTION]

mysql의 관점은 무엇입니까

이 문은 새 뷰를 생성할 수 있습니다. OR REPLACE 절이 제공되면 이 문은 기존 뷰를 대체할 수도 있습니다. select_statement는 뷰 정의를 제공하는 SELECT 문입니다. 이 명령문은 기본 테이블이나 다른 뷰에서 선택할 수 있습니다.

이 문에는 뷰에 대한 CREATE VIEW 권한과 SELECT 문에서 선택한 각 열에 대한 특정 권한이 필요합니다. SELECT 문의 다른 곳에서 사용되는 열에는 SELECT 권한이 필요합니다. OR REPLACE 절이 있는 경우 뷰에 대한 DROP 권한이 있어야 합니다.

뷰는 데이터베이스에 속합니다. 기본적으로 현재 데이터베이스에 새 보기가 생성됩니다. 특정 데이터베이스에 명시적으로 뷰를 생성하려면 생성 시 이름을 db_name.view_name으로 지정합니다.

mysql> CREATE VIEW test.v AS SELECT * FROM t;

테이블과 뷰는 데이터베이스에서 동일한 네임스페이스를 공유하므로 데이터베이스에는 동일한 이름의 테이블과 뷰가 포함될 수 없습니다.

뷰에는 기본 테이블과 마찬가지로 중복이 없는 고유한 열 이름이 있어야 합니다. 기본적으로 SELECT 문으로 검색된 열 이름은 뷰 열 이름으로 사용됩니다. 뷰 열의 명시적 이름을 정의하려면 쉼표로 구분된 ID를 나열하는 선택적 column_list 절을 사용하세요. column_list의 이름 수는 SELECT 문으로 검색된 열 수와 동일해야 합니다.

SELECT 문으로 검색된 열은 테이블 열에 대한 단순 참조일 수 있습니다. 함수, 상수 값, 연산자 등을 사용한 표현식일 수도 있습니다.

SELECT 문의 정규화되지 않은 테이블이나 뷰는 기본 데이터베이스에 따라 해석됩니다. 뷰는 적절한 데이터베이스 이름으로 테이블이나 뷰 이름을 한정하여 다른 데이터베이스의 테이블이나 뷰를 참조할 수 있습니다.

추천 학습: "mysql 비디오 튜토리얼"

위 내용은 mysql의 관점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.