📄 create_view.sgml
字号:
<refentry id="SQL-CREATEVIEW"> <refmeta> <refentrytitle> CREATE VIEW </refentrytitle> <refmiscinfo>SQL - Language Statements</refmiscinfo> </refmeta> <refnamediv> <refname> CREATE VIEW </refname> <refpurpose> Constructs a virtual table </refpurpose> </refnamediv> <refsynopsisdiv> <refsynopsisdivinfo> <date>1998-09-21</date> </refsynopsisdivinfo> <synopsis>CREATE VIEW <replaceable class="PARAMETER">view</replaceable> AS SELECT <replaceable class="PARAMETER">query</replaceable> </synopsis> <refsect2 id="R2-SQL-CREATEVIEW-1"> <refsect2info> <date>1998-09-21</date> </refsect2info> <title> Inputs </title> <para> <variablelist> <varlistentry> <term><replaceable class="parameter">view</replaceable></term> <listitem> <para> The name of a view to be created. </para> </listitem> </varlistentry> <varlistentry> <term><replaceable class="parameter">query</replaceable></term> <listitem> <para> An SQL query which will provide the columns and rows of the view. </para> <para> Refer to the SELECT statement for more information about valid arguments. </para> </listitem> </varlistentry> </variablelist> </para> </refsect2> <refsect2 id="R2-SQL-CREATEVIEW-2"> <refsect2info> <date>1998-09-21</date> </refsect2info> <title> Outputs </title> <para> <variablelist> <varlistentry> <term><computeroutput>CREATE </computeroutput></term> <listitem> <para> The message returned if the view is successfully created. </para> </listitem> </varlistentry> <varlistentry> <term><computeroutput>ERROR: Relation '<replaceable class="parameter">view</replaceable>' already exists </computeroutput></term> <listitem> <para> This error occurs if the view specified already exists in the database. </para> </listitem> </varlistentry> <varlistentry> <term><computeroutput>NOTICE create: attribute named "<replaceable class="parameter">column</replaceable>" has an unknown type </computeroutput></term> <listitem> <para> The view will be created having a column with an unknown type if you do not specify it. For example, the following command gives an error: <programlisting>CREATE VIEW vista AS SELECT 'Hello World' </programlisting> whereas this command does not: <programlisting>CREATE VIEW vista AS SELECT 'Hello World'::text </programlisting> </para> </listitem> </varlistentry> </variablelist> </para> </refsect2> </refsynopsisdiv> <refsect1 id="R1-SQL-CREATEVIEW-1"> <refsect1info> <date>1998-09-21</date> </refsect1info> <title> Description </title> <para> <command>CREATE VIEW</command> will define a view of a table. This view is not physically materialized. Specifically, a query rewrite retrieve rule is automatically generated to support retrieve operations on views. </para> <refsect2 id="R2-SQL-CREATEVIEW-3"> <refsect2info> <date>1998-09-21</date> </refsect2info> <title> Notes </title> <para> Use the <command>DROP VIEW</command> statement to drop views. </para> </refsect2> <refsect2 id="R2-SQL-CREATEVIEW-4"> <refsect2info> <date>1998-09-21</date> </refsect2info> <title> Bugs </title> <para> Currently, views are read only. </para> </refsect2> </refsect1> <refsect1 id="R1-SQL-CREATEVIEW-2"> <title> Usage </title> <para> Create a view consisting of all Comedy films: <programlisting>CREATE VIEW kinds AS SELECT * FROM films WHERE kind = 'Comedy';SELECT * FROM kinds;code |title |did| date_prod|kind |len-----+-------------------------+---+----------+----------+------UA502|Bananas |105|1971-07-13|Comedy | 01:22C_701|There's a Girl in my Soup|107|1970-06-11|Comedy | 01:36 </programlisting> </para> </refsect1> <refsect1 id="R1-SQL-CREATEVIEW-3"> <title> Compatibility </title> <para> </para> <refsect2 id="R2-SQL-CREATEVIEW-5"> <refsect2info> <date>1998-09-21</date> </refsect2info> <title> SQL92 </title> <para> SQL92 specifies some additional capabilities for the <command>CREATE VIEW</command> statement: </para> <synopsis>CREATE VIEW <replaceable class="parameter">view</replaceable> [ <replaceable class="parameter">column</replaceable> [, ...] ] AS SELECT <replaceable class="parameter">expression</replaceable> [ AS <replaceable class="parameter">colname</replaceable> ] [, ...] FROM <replaceable class="parameter">table</replaceable> [ WHERE <replaceable class="parameter">condition</replaceable> ] [ WITH [ CASCADE | LOCAL ] CHECK OPTION ] </synopsis> <para> The optional clauses for the full SQL92 command are: <variablelist> <varlistentry> <term>CHECK OPTION</term> <listitem> <para> This option is to do with updatable views. All INSERTs and UPDATEs on the view will be checked to ensure data satisfy the view-defining condition. If they do not, the update will be rejected. </para> </listitem> </varlistentry> <varlistentry> <term>LOCAL</term> <listitem> <para> Check for integrity on this view. </para> </listitem> </varlistentry> <varlistentry> <term>CASCADE</term> <listitem> <para> Check for integrity on this view and on any dependent view. CASCADE is assumed if neither CASCADE nor LOCAL is specified. </para> </listitem> </varlistentry> </variablelist> </para> </refsect2> </refsect1></refentry><!-- Keep this comment at the end of the fileLocal variables:mode: sgmlsgml-omittag:nilsgml-shorttag:tsgml-minimize-attributes:nilsgml-always-quote-attributes:tsgml-indent-step:1sgml-indent-data:tsgml-parent-document:nilsgml-default-dtd-file:"../reference.ced"sgml-exposed-tags:nilsgml-local-catalogs:"/usr/lib/sgml/catalog"sgml-local-ecat-files:nilEnd:-->
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -