SET ANSI 命令

确定如何在 Visual FoxPro SQL 命令中使用 = 运算符对不同长度的字符串进行比较。

语法

  
SET ANSI ON | OFF  

参数

ON
(驱动程序的默认值;Visual FoxPro 的默认值为 OFF.) 用空白填充较短的字符串,使其等于较长字符串的长度。 然后,比较两个字符串的字符的整个长度。 请考虑此比较:

'Tommy' = 'Tom'  

如果打开 SET ANSI,则结果为 False (.F.) ,因为填充时,“Tom”变为“Tom”,字符串“Tom”和“Tommy”与字符不匹配。

== 运算符使用此方法在 Visual FoxPro SQL 命令中进行比较。

OFF
指定较短的字符串不用空格填充。 两个字符串是字符的比较字符,直到到达较短字符串的末尾。 请考虑此比较:

'Tommy' = 'Tom'  

当 SET ANSI 关闭时,结果为 True (.T.) ,因为比较在“Tom”之后停止。

注解

SET ANSI 确定进行 SQL 字符串比较时,是否用空白填充两个字符串中的较短一个字符串。 SET ANSI 对 == 运算符没有影响;使用 == 运算符时,较短的字符串始终填充空白以进行比较。

字符串顺序

在 SQL 命令中,比较中两个字符串的从左到右顺序不相关,将字符串从 = 或 == 运算符的一侧切换到另一侧不会影响比较的结果。

另请参阅

SELECT - SQL 命令
SET EXACT 命令