Subject | Domain character sets WAS: Create table NOT NULL and CHARACTER SET |
---|---|
Author | Rick Debay |
Post date | 2006-11-20T16:13:27Z |
So this implies for each table, the applicable portion of the column
definition is stored as a domain?
Then there is definitely an error in 'The Firebird Book,' as Table 13-1
states otherwise:
Domain Attributes and Column Overrides
Attribute Override? Notes
CHARACTER SET Yes Can also be used to revert a column to
database default.
I will have to create a new domain, and comment heavily so both domains
refer to each other.
-----Original Message-----
From: firebird-support@yahoogroups.com
[mailto:firebird-support@yahoogroups.com] On Behalf Of Ivan Prenosil
Sent: Saturday, November 18, 2006 7:34 AM
To: Firebird-Support
Subject: Re: [firebird-support] Create table NOT NULL and CHARACTER SET
There is always only ONE instance of each domain (stored in RDB$FIELDS).
The only place where character set is stored is _domain_, field
_definitions_ (stored in RDB$RELATION_FIELDS) do _not_ have field for
storing character set, they always take it over from the domain they
reference.
IOW this is not possible (with current structure of system tables):
Ivan
definition is stored as a domain?
Then there is definitely an error in 'The Firebird Book,' as Table 13-1
states otherwise:
Domain Attributes and Column Overrides
Attribute Override? Notes
CHARACTER SET Yes Can also be used to revert a column to
database default.
I will have to create a new domain, and comment heavily so both domains
refer to each other.
-----Original Message-----
From: firebird-support@yahoogroups.com
[mailto:firebird-support@yahoogroups.com] On Behalf Of Ivan Prenosil
Sent: Saturday, November 18, 2006 7:34 AM
To: Firebird-Support
Subject: Re: [firebird-support] Create table NOT NULL and CHARACTER SET
>> RECREATE TABLE TEST_1Hmmm, I will try to explain better ... :-)
>> (
>> TST D_TST_DOMAIN CHARACTER SET ASCII COLLATE ASCII
>> )
>
>> How do you override the character set of a domain?
>
> You can't, and why do you want to? Your domain either defines a
> character set and then it's applied to all of its instances or it
> doesn't and the instances are free to use whatever character set they
> want.
There is always only ONE instance of each domain (stored in RDB$FIELDS).
The only place where character set is stored is _domain_, field
_definitions_ (stored in RDB$RELATION_FIELDS) do _not_ have field for
storing character set, they always take it over from the domain they
reference.
IOW this is not possible (with current structure of system tables):
> or it doesn't and the instances are free to use whatever character setthey want.
Ivan