set collate 命令

请参阅

指定在后续索引和排序操作中,字符型字段的排序顺序。

语法

SET COLLATE TO cSequenceName

参数

cSequenceName

指定排序顺序。有效的排序顺序有:

选项 语言
DUTCH 荷兰语
GENERAL 英语、法语、德语、当代西班牙语、葡萄牙语和其他西欧语言
GERMAN 德国电话序列(DIN)
ICELAND 冰岛语
MACHINE 机器语言(早期 FoxPro 版本中排序顺序的默认设置)
NORDAN 挪威语、丹麦语
SPANISH 古典西班牙语
SWEFIN 瑞典语、芬兰语
UNIQWT 唯一重量

当指定 SPANISH 选项时,“ch”是排在“c”和“d”之间的单个字母;“ll”排在“l”和“m”之间。

如果指定的排序序列是原义字符串,应该用引号把选项括起来:

SET COLLATE TO "SWEFIN"


MACHINE 是默认的排序顺序选项,也是 Xbase 用户很熟悉的排序方法。字符是按它们在当前代码页中出现的顺序排序的。
美国和西欧用户可能更喜欢使用 GENERAL。在这个选项中,字符的排序顺序与它们在当前代码页中出现的顺序相同。在 FoxPro 的 2.5 以前的版本中,可以在创建索引时使用 UPPER( ) 或LOWER( ) 来操作字符字段。在 FoxPro 的 2.5 以后的版本中,可以指定 GENERAL 排序顺序选项而省略 UPPER( ) 转换。
请注意:如果指定的排序顺序选项不是 MACHINE,并创建了 .IDX 文件,则创建的 .IDX 文件是压缩的 .IDX 文件。

使用 SET(COLLATE) 可以返回当前的排序顺序。
如果在 Visual FoxPro 的配置文件中加入如下一行,那么启动 Visual FoxPro 时将自动指定一种排序顺序。

COLLATE = cSequenceName


也可以执行如下命令,结果相同。

SET COLLATE TO cSequenceName

说明

SET COLLATE 可以对任何 FoxPro 支持语言中包含重音字符的表进行排序。改变 SET COLLATE 设置不会影响以前打开的索引排序顺序。Visual FoxPro 自动维护已经存在的索引,保持提供创建多种不同类型索引的灵活性,甚至对于同一字段也是如此。
例如,如果在 SET COLLATE 设置为 GENERAL 时创建了一个索引,然后把 SET COLLATE 的设置改变为 SAPANISH,这时,原来创建的索引仍然保持 GENERAL 排序顺序。
SET COLLATE 的作用域是当前数据工作期。
有关代码页和 Visual FoxPro 的国际支持的其他内容,请参阅 Visual FoxPro 支持的代码页,和《开发指南》第二十章“开发国际应用程序”。

有关配置 Visual FoxPro 的详细内容,请参阅《安装指南》的第三章“配置 Visual FoxPro”。