diff options
Diffstat (limited to 'doc/src/sgml/ref/create_server.sgml')
-rw-r--r-- | doc/src/sgml/ref/create_server.sgml | 167 |
1 files changed, 167 insertions, 0 deletions
diff --git a/doc/src/sgml/ref/create_server.sgml b/doc/src/sgml/ref/create_server.sgml new file mode 100644 index 0000000..af0a7a0 --- /dev/null +++ b/doc/src/sgml/ref/create_server.sgml @@ -0,0 +1,167 @@ +<!-- +doc/src/sgml/ref/create_server.sgml +PostgreSQL documentation +--> + +<refentry id="sql-createserver"> + <indexterm zone="sql-createserver"> + <primary>CREATE SERVER</primary> + </indexterm> + + <refmeta> + <refentrytitle>CREATE SERVER</refentrytitle> + <manvolnum>7</manvolnum> + <refmiscinfo>SQL - Language Statements</refmiscinfo> + </refmeta> + + <refnamediv> + <refname>CREATE SERVER</refname> + <refpurpose>define a new foreign server</refpurpose> + </refnamediv> + + <refsynopsisdiv> +<synopsis> +CREATE SERVER [ IF NOT EXISTS ] <replaceable class="parameter">server_name</replaceable> [ TYPE '<replaceable class="parameter">server_type</replaceable>' ] [ VERSION '<replaceable class="parameter">server_version</replaceable>' ] + FOREIGN DATA WRAPPER <replaceable class="parameter">fdw_name</replaceable> + [ OPTIONS ( <replaceable class="parameter">option</replaceable> '<replaceable class="parameter">value</replaceable>' [, ... ] ) ] +</synopsis> + </refsynopsisdiv> + + <refsect1> + <title>Description</title> + + <para> + <command>CREATE SERVER</command> defines a new foreign server. The + user who defines the server becomes its owner. + </para> + + <para> + A foreign server typically encapsulates connection information that + a foreign-data wrapper uses to access an external data resource. + Additional user-specific connection information may be specified by + means of user mappings. + </para> + + <para> + The server name must be unique within the database. + </para> + + <para> + Creating a server requires <literal>USAGE</literal> privilege on the + foreign-data wrapper being used. + </para> + </refsect1> + + <refsect1> + <title>Parameters</title> + + <variablelist> + <varlistentry> + <term><literal>IF NOT EXISTS</literal></term> + <listitem> + <para> + Do not throw an error if a server with the same name already exists. + A notice is issued in this case. Note that there is no guarantee that + the existing server is anything like the one that would have been + created. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable class="parameter">server_name</replaceable></term> + <listitem> + <para> + The name of the foreign server to be created. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable class="parameter">server_type</replaceable></term> + <listitem> + <para> + Optional server type, potentially useful to foreign-data wrappers. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable class="parameter">server_version</replaceable></term> + <listitem> + <para> + Optional server version, potentially useful to foreign-data wrappers. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable class="parameter">fdw_name</replaceable></term> + <listitem> + <para> + The name of the foreign-data wrapper that manages the server. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><literal>OPTIONS ( <replaceable class="parameter">option</replaceable> '<replaceable class="parameter">value</replaceable>' [, ... ] )</literal></term> + <listitem> + <para> + This clause specifies the options for the server. The options + typically define the connection details of the server, but the + actual names and values are dependent on the server's + foreign-data wrapper. + </para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + + <refsect1> + <title>Notes</title> + + <para> + When using the <xref linkend="dblink"/> module, + a foreign server's name can be used + as an argument of the <xref linkend="contrib-dblink-connect"/> + function to indicate the connection parameters. It is necessary to have + the <literal>USAGE</literal> privilege on the foreign server to be + able to use it in this way. + </para> + </refsect1> + + <refsect1> + <title>Examples</title> + + <para> + Create a server <literal>myserver</literal> that uses the + foreign-data wrapper <literal>postgres_fdw</literal>: +<programlisting> +CREATE SERVER myserver FOREIGN DATA WRAPPER postgres_fdw OPTIONS (host 'foo', dbname 'foodb', port '5432'); +</programlisting> + See <xref linkend="postgres-fdw"/> for more details. + </para> + </refsect1> + + <refsect1> + <title>Compatibility</title> + + <para> + <command>CREATE SERVER</command> conforms to ISO/IEC 9075-9 (SQL/MED). + </para> + </refsect1> + + <refsect1> + <title>See Also</title> + + <simplelist type="inline"> + <member><xref linkend="sql-alterserver"/></member> + <member><xref linkend="sql-dropserver"/></member> + <member><xref linkend="sql-createforeigndatawrapper"/></member> + <member><xref linkend="sql-createforeigntable"/></member> + <member><xref linkend="sql-createusermapping"/></member> + </simplelist> + </refsect1> + +</refentry> |