이 글에서는 MySQL
에서 뷰를 생성하기 위해 CREATE VIEW
문을 사용하는 방법을 주로 설명합니다. CREATE VIEW
语句在MySQL
中创建视图。
语法:
CREATE VIEW <视图名> AS <SELECT语句>
<视图名>:指定视图的名称。该名称在数据库中必须是唯一的,不能与其他表或视图同名。
对于创建视图中的 SELECT 语句的指定存在以下限制:
用户除了拥有 CREATE VIEW
权限外,还具有操作中涉及的基础表和其他视图的相关权限。
SELECT 语句
不能引用系统或用户变量。
SELECT 语句
不能包含 FROM 子句中的子查询。
SELECT 语句
不能引用预处理语句参数。
视图定义中引用的表或视图必须存在。但是,创建完视图后,可以删除定义引用的表或视图。可使用 CHECK TABLE
语句检查视图定义是否存在这类问题。
视图定义中允许使用 ORDER BY
语句,但是若从特定视图进行选择,而该视图使用了自己的 ORDER BY
语句,则视图定义中的 ORDER BY
将被忽略。
视图定义中不能引用 TEMPORARY 表
(临时表),不能创建 TEMPORARY 视图
。WITH CHECK OPTION
的意思是,修改视图时,检查插入的数据是否符合 WHERE
设置的条件。
在 b_menu
表上创建一个名为 view_menu
的视图,输入的 SQL
구문:
create view view_menu as select *from b_menu;
생성된 뷰의 SELECT 문 지정에는 다음과 같은 제한 사항이 있습니다.
제외 사용자 CREATE VIEW
권한 외에도 작업과 관련된 기본 테이블 및 기타 뷰에 대한 관련 권한도 있습니다.
SELECT 문
은 시스템 또는 사용자 변수를 참조할 수 없습니다. 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;
위 내용은 MySQL 데이터베이스에서 뷰를 생성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!