Commit 013c0baa authored by Tom Lane's avatar Tom Lane

Doc: explicitly point out that enum values can't be dropped.

This was not stated in so many words anywhere.  Document it to make
clear that it's a design limitation and not just an oversight or
documentation omission.

Discussion: https://postgr.es/m/152089733343.1222.6927268289645380498@wrigleys.postgresql.org
parent 4120864b
......@@ -3059,6 +3059,20 @@ SELECT person.name, holidays.num_weeks FROM person, holidays
<sect2>
<title>Implementation Details</title>
<para>
Enum labels are case sensitive, so
<type>'happy'</type> is not the same as <type>'HAPPY'</type>.
White space in the labels is significant too.
</para>
<para>
Although enum types are primarily intended for static sets of values,
there is support for adding new values to an existing enum type, and for
renaming values (see <xref linkend="sql-altertype"/>). Existing values
cannot be removed from an enum type, nor can the sort ordering of such
values be changed, short of dropping and re-creating the enum type.
</para>
<para>
An enum value occupies four bytes on disk. The length of an enum
value's textual label is limited by the <symbol>NAMEDATALEN</symbol>
......@@ -3066,12 +3080,6 @@ SELECT person.name, holidays.num_weeks FROM person, holidays
builds this means at most 63 bytes.
</para>
<para>
Enum labels are case sensitive, so
<type>'happy'</type> is not the same as <type>'HAPPY'</type>.
White space in the labels is significant too.
</para>
<para>
The translations from internal enum values to textual labels are
kept in the system catalog
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment