mirror of https://github.com/postgres/postgres
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
This commit is contained in:
parent
4120864b9e
commit
013c0baadd
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue