作者:古涵生 | 来源:互联网 | 2024-09-30 19:53
虽然在会话结束之后(或您执行SETNOCOLLATION之后)数据库服务器恢复到DB_LOCALE对照顺序,但您使用非缺省的对照创建的对象仍留在数据库中。例如,您
虽然在会话结束之后(或您执行 SET NO COLLATION 之后)数据库服务器恢复到 DB_LOCALE
对照顺序,但您使用非缺省的对照创建的对象仍留在数据库中。例如,您可在相同的列的集合上,
使用 SET COLLATION 指定的不同的对照顺序来创建多索引,称为多语言索引。
然而,在给定的列的集合上,仅可存在一个集群的索引。
在给定的列的集合上,仅可存在一个唯一的约束或主键,但您可在同样的列的集合上创建多个唯一
的索引,如果每一索引有不同的对照顺序的话。
当计算查询的成本时,对于那些将任何非当前会话对照的任何对照应用于 NCHAR 或
NVARCHAR 列,查询优化器不顾及这些索引。
附加的索引的对照顺序必须与它的表的相同,且此必须为由 DB_LOCALE 指定的缺省的对照顺
序。
ALTER INDEX 语句不可更改索引的对照。当 ALTER INDEX 执行时,不管任何先前的 SET
COLLATION 语句。
当您将来自 CHAR 列的值与 NCHAR 列比较时, GBase 8s 强制将 CHAR 值转型为 NCHAR,
然后再应用当前的对照。类似地,在比较 VARCHAR 与 NVARCHAR 值之前, GBase 8s 首先将
VARCHAR 值强制转型为 NVARCHAR。
当为远程表或视图创建同义词时,参与的数据库必须有相同的对照顺序。然而,现有的同义词可用
在支持 SET COLLATION 的其他数据库中,且该同义词的对照顺序不顾及 DB_LOCALE 的设
置。
对 NCHAR 或 NVARCHAR 值排序的检查约束、游标、准备好的对象、触发器和 SPL 例程使用
在它们创建时刻生效的对照,如果这与 DB_LOCALE 设置不同的话。
当创建按本地化的顺序排序的数据库对象时,有多少不同的对照会对性能有灵敏的影响。