db-derby-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Db-derby Wiki] Update of "BuiltInLanguageBasedOrderingDERBY-1478" by MamtaSatoor
Date Tue, 10 Apr 2007 06:11:20 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Db-derby Wiki" for change notification.

The following page has been changed by MamtaSatoor:
http://wiki.apache.org/db-derby/BuiltInLanguageBasedOrderingDERBY-1478

------------------------------------------------------------------------------
  
  1)Subclasses with non-default-collation have been implemented for character types SQLChar,
SQLVarchar, SQLLongvarchar and SQLClob. The new subcalsses are called CollatorSQLChar, CollatorSQLVarchar,
CollatorSQLLongvarchar and CollatorSQLClob, respectively. They reside in derby.iapi.types
package. This work was done by revisions 516864, 516869 and 518479, 524545.
  
- 2)The type definition of a data type is described by DTD (DataTypeDescriptor). This DTD
will have two additional attributes called collation type and collation derivation. DTD probably
will need getter and setter for the 2 additional attributes.(These new attributes only apply
to collation sensitive types, namely char datatypes. For other data types, these attributes
will be ignored.) As per SQL spec, the collation derivation can hold 3 values, "explicit",
"implicit" and "none". In Derby 10.3, the collation derivation will never be "explicit" because
Derby 10.3 does not support SQL Standard's COLLATE clause. In Derby 10.3, the collation derivation
can be "implicit" or "none". If collation derivation is "none", then it means the collation
type can't be determined. This can happen when an aggregate function is working with operands
of different collation types. If the result of such an aggregate function is character string
type, then it's collation derivation will be "none",
  ie it can not be determined. Other than this aggregate "none" case, the collation derivation
will always be "implicit" and collation type will be (0)UCS_BASIC/(1)TERRITORY_BASED. Which
one of the 2 collation types is picked for a character string type is explained in detail
in section "Collation Determination". This work was done by revisions 525568 and 525729. The
work for this line item went in as part Jira entry DERBY-2524.
+ 2)The type definition of a data type is described by DTD (DataTypeDescriptor). This DTD
will have two additional attributes called collation type and collation derivation. DTD probably
will need getter and setter for the 2 additional attributes.(These new attributes only apply
to collation sensitive types, namely char datatypes. For other data types, these attributes
will be ignored.) As per SQL spec, the collation derivation can hold 3 values, "explicit",
"implicit" and "none". In Derby 10.3, the collation derivation will never be "explicit" because
Derby 10.3 does not support SQL Standard's COLLATE clause. In Derby 10.3, the collation derivation
can be "implicit" or "none". If collation derivation is "none", then it means the collation
type can't be determined. This can happen when an aggregate function is working with operands
of different collation types. If the result of such an aggregate function is character string
type, then it's collation derivation will be "none",
  ie it can not be determined. Other than this aggregate "none" case, the collation derivation
will always be "implicit" and collation type will be (0)UCS_BASIC/(1)TERRITORY_BASED. Which
one of the 2 collation types is picked for a character string type is explained in detail
in section "Collation Determination". This work was done by revisions 525568 and 525729, 527033.
The work for this line item went in as part Jira entry DERBY-2524.
  
  3)BasicDatabase needs to set the Locale value in the DVF after DVF has booted. DERBY-2535
Make Locale available in DataValueFactory(DVF). This Locale object will be used to construct
Collator object if the user has requested territory based collation. Changes went in as part
of revision 527034
  

Mime
View raw message