Thread: BUG #6214: can't change Column COLLATE
The following bug has been logged online: Bug reference: 6214 Logged by: yulin liu Email address: e9320.tw@gmail.com PostgreSQL version: PostgreSQL 9.1 Operating system: CentOS release 5.4 Description: can't change Column COLLATE Details: can't change Column COLLATE pg_catalog."default" to pg_catalog."zh_TW.euctw"
"yulin liu" <e9320.tw@gmail.com> writes: > can't change Column COLLATE pg_catalog."default" to pg_catalog."zh_TW.euctw" Use ALTER TABLE ... ALTER COLUMN ... TYPE ... COLLATE ... regards, tom lane
Use ALTER TABLE item ALTER COLUMN title TYPE character varying(2000) COLLATE pg_catalog."zh_TW.euctw";
but, SQL state: 42704 "UTF8" "pg_catalog.zh_TW.euctw" not found
2011/9/19 Tom Lane <tgl@sss.pgh.pa.us>
"yulin liu" <e9320.tw@gmail.com> writes:
> can't change Column COLLATE pg_catalog."default" to pg_catalog."zh_TW.euctw"
Use ALTER TABLE ... ALTER COLUMN ... TYPE ... COLLATE ...
regards, tom lane
小豕 <e9320.tw@gmail.com> writes: > Use ALTER TABLE item ALTER COLUMN title TYPE character varying(2000) > COLLATE pg_catalog."zh_TW.euctw"; > but, SQL state: 42704 "UTF8" "pg_catalog.zh_TW.euctw" not found I hope that's not the exact phrasing of the error message ... but what it's probably trying to tell you is that you can't use an EUC_TW based locale in a database with UTF8 encoding. Try zh_TW.utf8. regards, tom lane
On tis, 2011-09-20 at 00:32 -0400, Tom Lane wrote: > 小豕 <e9320.tw@gmail.com> writes: > > Use ALTER TABLE item ALTER COLUMN title TYPE character varying(2000) > > COLLATE pg_catalog."zh_TW.euctw"; > > but, SQL state: 42704 "UTF8" "pg_catalog.zh_TW.euctw" not found > > I hope that's not the exact phrasing of the error message ... but > what it's probably trying to tell you is that you can't use an EUC_TW > based locale in a database with UTF8 encoding. Try zh_TW.utf8. It's usually easier to just use COLLATE "zh_TW", and it will pick up the right encoding.