aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2023-01-31 14:32:24 -0500
committerTom Lane <tgl@sss.pgh.pa.us>2023-01-31 14:33:13 -0500
commitdbe294644380e6facd63aeaf3975af6188a219b9 (patch)
tree38180c0e39a50ee41ed433f70af2def3f9301593
parente8fb2a721b361514d31d3dc7c5f1e3cae347106e (diff)
downloadpostgresql-dbe294644380e6facd63aeaf3975af6188a219b9.tar.gz
postgresql-dbe294644380e6facd63aeaf3975af6188a219b9.zip
Doc: clarify use of NULL to drop comments and security labels.
This was only mentioned in the description of the text/label, which are marked as being in quotes in the synopsis, which can cause confusion (as witnessed on IRC). Also separate the literal and NULL cases in the parameter list, per suggestion from Tom Lane. Also add an example of dropping a security label. Dagfinn Ilmari Mannsåker, with some tweaks by me Discussion: https://postgr.es/m/87sffqk4zp.fsf@wibble.ilmari.org
-rw-r--r--doc/src/sgml/ref/comment.sgml16
-rw-r--r--doc/src/sgml/ref/security_label.sgml29
2 files changed, 34 insertions, 11 deletions
diff --git a/doc/src/sgml/ref/comment.sgml b/doc/src/sgml/ref/comment.sgml
index 138cf718ce1..ab69bd68c89 100644
--- a/doc/src/sgml/ref/comment.sgml
+++ b/doc/src/sgml/ref/comment.sgml
@@ -66,7 +66,7 @@ COMMENT ON
TRIGGER <replaceable class="parameter">trigger_name</replaceable> ON <replaceable class="parameter">table_name</replaceable> |
TYPE <replaceable class="parameter">object_name</replaceable> |
VIEW <replaceable class="parameter">object_name</replaceable>
-} IS '<replaceable class="parameter">text</replaceable>'
+} IS { <replaceable class="parameter">string_literal</replaceable> | NULL }
<phrase>where <replaceable>aggregate_signature</replaceable> is:</phrase>
@@ -264,11 +264,19 @@ COMMENT ON
</varlistentry>
<varlistentry>
- <term><replaceable class="parameter">text</replaceable></term>
+ <term><replaceable class="parameter">string_literal</replaceable></term>
<listitem>
<para>
- The new comment, written as a string literal; or <literal>NULL</literal>
- to drop the comment.
+ The new comment contents, written as a string literal.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>NULL</literal></term>
+ <listitem>
+ <para>
+ Write <literal>NULL</literal> to drop the comment.
</para>
</listitem>
</varlistentry>
diff --git a/doc/src/sgml/ref/security_label.sgml b/doc/src/sgml/ref/security_label.sgml
index e9688cce214..720f319c8b2 100644
--- a/doc/src/sgml/ref/security_label.sgml
+++ b/doc/src/sgml/ref/security_label.sgml
@@ -44,7 +44,7 @@ SECURITY LABEL [ FOR <replaceable class="parameter">provider</replaceable> ] ON
TABLESPACE <replaceable class="parameter">object_name</replaceable> |
TYPE <replaceable class="parameter">object_name</replaceable> |
VIEW <replaceable class="parameter">object_name</replaceable>
-} IS '<replaceable class="parameter">label</replaceable>'
+} IS { <replaceable class="parameter">string_literal</replaceable> | NULL }
<phrase>where <replaceable>aggregate_signature</replaceable> is:</phrase>
@@ -179,11 +179,19 @@ SECURITY LABEL [ FOR <replaceable class="parameter">provider</replaceable> ] ON
</varlistentry>
<varlistentry>
- <term><replaceable class="parameter">label</replaceable></term>
+ <term><replaceable class="parameter">string_literal</replaceable></term>
<listitem>
<para>
- The new security label, written as a string literal; or <literal>NULL</literal>
- to drop the security label.
+ The new setting of the security label, written as a string literal.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>NULL</literal></term>
+ <listitem>
+ <para>
+ Write <literal>NULL</literal> to drop the security label.
</para>
</listitem>
</varlistentry>
@@ -194,12 +202,19 @@ SECURITY LABEL [ FOR <replaceable class="parameter">provider</replaceable> ] ON
<title>Examples</title>
<para>
- The following example shows how the security label of a table might
- be changed.
+ The following example shows how the security label of a table could
+ be set or changed:
<programlisting>
SECURITY LABEL FOR selinux ON TABLE mytable IS 'system_u:object_r:sepgsql_table_t:s0';
-</programlisting></para>
+</programlisting>
+
+ To remove the label:
+
+<programlisting>
+SECURITY LABEL FOR selinux ON TABLE mytable IS NULL;
+</programlisting>
+ </para>
</refsect1>
<refsect1>