Re: Chante domain type - Postgres 9.2
От | Jan de Visser |
---|---|
Тема | Re: Chante domain type - Postgres 9.2 |
Дата | |
Msg-id | 96878288-5e4a-8dca-86b8-bfc4b46ea59f@de-visser.net обсуждение исходный текст |
Ответ на | Re: Chante domain type - Postgres 9.2 (Gavin Flower <GavinFlower@archidevsys.co.nz>) |
Ответы |
Re: Chante domain type - Postgres 9.2
|
Список | pgsql-general |
On 2016-09-26 1:15 AM, Gavin Flower wrote: > On 26/09/16 17:58, Patrick B wrote: >> Hi guys, >> >> I've got this domain: >> >> CREATE DOMAIN public.a_city >> AS character varying(80) >> COLLATE pg_catalog."default"; >> >> >> And I need to increase the type from character varying(80) to >> character varying(255). >> >> How can I do that? didn't find info about it. I'm using Postgres 9.2 >> >> Thanks! >> Patrick > > Why not simply use the 'text' data type? > > To change the data type on a column you can use: > ALTER [ COLUMN ] /column_name/ [ SET DATA ] TYPE /data_type/ [ COLLATE > /collation/ ] [ USING /expression/ ] > > see: > https://www.postgresql.org/docs/9.2/static/sql-altertable.html > > > Note that 9.5 is the latest version of pg, with 9.6 being released > very soon! > > > Cheers, > Gavin > So I guess the answer to the question is: - Find all occurrences of a_city - Change the type of those columns to text (or varchar(80)) - Drop the domain - Recreate with the proper definition. I agree with Gavin that text is a better choice. Experience has taught me that server side size constraint are more trouble than they're worth and that size constraints are better handled on the client side. - Change the type of the columns back to the domain.
В списке pgsql-general по дате отправления: