ALTER DOMAIN
Synopsis
ALTER DOMAIN name
{ SET DEFAULT expression | DROP DEFAULT }
ALTER DOMAIN name
{ SET | DROP } NOT NULL
ALTER DOMAIN name
ADD domain_constraint
ALTER DOMAIN name
DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]
ALTER DOMAIN name
OWNER TO new_owner
Description
ALTER DOMAIN changes the definition of an existing domain. There are several sub-forms:
- SET/DROP DEFAULT
These forms set or remove the default value for a domain. Note that defaults only apply to subsequent INSERT commands; they do not affect rows already in a table using the domain.
- SET/DROP NOT NULL
These forms change whether a domain is marked to allow NULL values or to reject NULL values. You may only SET NOT NULL when the columns using the domain contain no null values.
- ADD domain_constraint
This form adds a new constraint to a domain using the same syntax as CREATE DOMAIN. This will only succeed if all columns using the domain satisfy the new constraint.
- DROP CONSTRAINT
This form drops constraints on a domain.
- OWNER
This form changes the owner of the domain to the specified user.
You must own the domain to use ALTER DOMAIN; except for ALTER DOMAIN OWNER, which may only be executed by a superuser.
Parameters
- name
The name (possibly schema-qualified) of an existing domain to alter.
- domain_constraint
New domain constraint for the domain.
- constraint_name
Name of an existing constraint to drop.
- CASCADE
Automatically drop objects that depend on the constraint.
- RESTRICT
Refuse to drop the constraint if there are any dependent objects. This is the default behavior.
- new_owner
The user name of the new owner of the domain.
Examples
To add a NOT NULL constraint to a domain:
ALTER DOMAIN zipcode SET NOT NULL;
To remove a NOT NULL constraint from a domain:
ALTER DOMAIN zipcode DROP NOT NULL;
To add a check constraint to a domain:
ALTER DOMAIN zipcode ADD CONSTRAINT zipchk CHECK (char_length(VALUE) = 5);
To remove a check constraint from a domain:
ALTER DOMAIN zipcode DROP CONSTRAINT zipchk;
Report a documentation issue
Read the upstream documentation. For corrections, first check the current manual.