PostgreSQL 9.1beta1, compiled by Visual C++ build 1500, 64-bit (EnterpriseDB Install Executable)
CREATE DATABASE betatest
TEMPLATE template0
ENCODING 'UTF8'
LC_COLLATE 'C'
LC_CTYPE 'C';
[connect to database]
CREATE DOMAIN idcode AS text
NOT NULL CHECK (VALUE ~* '^\w[-:\w]*$')
;
SELECT 'AAAAAéaaaaa'::idcode; // -> SQL Error: ERROR: value for domain idcode violates check constraint "idcode_check" (note the accented “e” between all the “A”s)
This is running just fine against a 9.0 install on the same machine. [\w] is Unicode aware and server encoding is set (and confirmed via SHOW) to be “UTF8”.
David J.