Khamyl
Khamyl

Reputation: 408

Alter user-defined type column type in postgres

I have two user-defined types:

CREATE TYPE s.s_stavp_kv AS ENUM('k','v');

and

CREATE TYPE s.stavp_kv AS ENUM('k','v');

Table looks like this

CREATE TABLE s.zv_stavp
(
   version integer NOT NULL,
   id integer NOT NULL,
   tudu integer NOT NULL,
   kv s_stavp_kv NOT NULL,
   cobj text NOT NULL,
   iobj text NOT NULL,
   typev text
)

Now i need to change type of kv to stavp_kv type. Im trying something like:

ALTER TABLE s.zv_stavp 
  ALTER COLUMN kv TYPE stavp_kv USING ...???...;

But I dont know at all what to write as USING expression.

Upvotes: 1

Views: 912

Answers (1)

Khamyl
Khamyl

Reputation: 408

The answer is:

ALTER TABLE s.zv_stavp 
  ALTER COLUMN kv TYPE stavp_kv USING kv::text::stavp_kv;

Upvotes: 1

Related Questions