May 2018
Intermediate to advanced
576 pages
30h 25m
English
Let's say we want to change the dob column to another data type. Let's try with a simple example first, as follows:
postgres=# ALTER TABLE birthdaypostgres-# ALTER COLUMN dob SET DATA TYPE text;ALTER TABLE
This works fine. Let's just change that back to the integer type so that we can try something more complex, such as a date data type:
postgres=# ALTER TABLE birthdaypostgres-# ALTER COLUMN dob SET DATA TYPE integer;ERROR: column "dob" cannot be cast to type integer
Oh! What went wrong? Let's try using an explicit conversion with the USING clause, as follows:
postgres=# ALTER TABLE birthday ALTER COLUMN dob SET DATA TYPE integer USING dob::integer;ALTER TABLE
This works as expected. Now let's try moving to a date type:
postgres=# ...