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”。