>데이터 베이스 >MySQL 튜토리얼 >MySQL 데이터베이스에서 뷰를 생성하는 방법

MySQL 데이터베이스에서 뷰를 생성하는 방법

autoload
autoload원래의
2021-03-22 17:31:294032검색

이 글에서는 MySQL에서 뷰를 생성하기 위해 CREATE VIEW 문을 사용하는 방법을 주로 설명합니다. CREATE VIEW语句在MySQL中创建视图。

语法:

CREATE VIEW <视图名> AS <SELECT语句>
  • :指定视图的名称。该名称在数据库中必须是唯一的,不能与其他表或视图同名。

对于创建视图中的 SELECT 语句的指定存在以下限制:

  1.  用户除了拥有 CREATE VIEW 权限外,还具有操作中涉及的基础表和其他视图的相关权限。

  2. SELECT 语句不能引用系统或用户变量。

  3. SELECT 语句不能包含 FROM 子句中的子查询。

  4. SELECT 语句不能引用预处理语句参数。

     视图定义中引用的表或视图必须存在。但是,创建完视图后,可以删除定义引用的表或视图。可使用 CHECK TABLE 语句检查视图定义是否存在这类问题。
    视图定义中允许使用 ORDER BY 语句,但是若从特定视图进行选择,而该视图使用了自己的 ORDER BY 语句,则视图定义中的 ORDER BY 将被忽略。
    视图定义中不能引用 TEMPORARY 表(临时表),不能创建 TEMPORARY 视图
WITH CHECK OPTION 的意思是,修改视图时,检查插入的数据是否符合 WHERE 设置的条件。

b_menu 表上创建一个名为 view_menu 的视图,输入的 SQL

구문: ​​MySQL 데이터베이스에서 뷰를 생성하는 방법

create view view_menu
as select *from b_menu;
  • : 보기의 이름을 지정합니다. 이름은 데이터베이스에서 고유해야 하며 다른 테이블이나 뷰와 동일한 이름을 가질 수 없습니다.

생성된 뷰의 SELECT 문 지정에는 다음과 같은 제한 사항이 있습니다.

  1. 제외 사용자 CREATE VIEW 권한 외에도 작업과 관련된 기본 테이블 및 기타 뷰에 대한 관련 권한도 있습니다. MySQL 데이터베이스에서 뷰를 생성하는 방법

  2. SELECT 문은 시스템 또는 사용자 변수를 참조할 수 없습니다.

  3. SELECT 문은 FROM 절에 하위 쿼리를 포함할 수 없습니다.

  4. SELECT 문은 준비된 문 매개변수를 참조할 수 없습니다.
🎜 뷰 정의에서 참조하는 테이블이나 뷰가 존재해야 합니다. 그러나 뷰를 생성한 후 정의가 참조하는 테이블이나 뷰를 삭제할 수 있습니다. CHECK TABLE 문을 사용하여 이러한 문제에 대한 뷰 정의를 확인할 수 있습니다. 🎜 ORDER BY 문은 뷰 정의에서 허용되지만 특정 뷰에서 선택하고 뷰가 자체 ORDER BY 문을 사용하는 경우 뷰 정의 >ORDER BY 는 무시됩니다. 🎜 TEMPORARY 테이블(임시 테이블)은 뷰 정의에서 참조할 수 없으며 TEMPORARY 뷰를 생성할 수 없습니다. 🎜WITH CHECK OPTION은 뷰 수정 시 삽입된 데이터가 WHERE 에 설정된 조건을 충족하는지 확인한다는 의미입니다. 🎜🎜b_menu 테이블에 view_menu라는 뷰를 생성합니다. 입력된 SQL 문과 실행 결과는 다음과 같습니다. 🎜🎜🎜🎜🎜🎜뷰 생성 SQL 문: 🎜🎜
select * from view_menu;
🎜🎜뷰 뷰 SQL 문: 🎜🎜🎜rrreee🎜🎜🎜🎜 기본적으로 생성된 뷰에는 기본 테이블과 동일한 필드가 있으며, 뷰를 지정할 수도 있습니다. 뷰를 생성할 필드의 이름입니다. (주로 뷰를 생성할 때 모든 데이터가 사용되기 때문입니다). 🎜🎜추천: 🎜mysql 튜토리얼🎜🎜

위 내용은 MySQL 데이터베이스에서 뷰를 생성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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