次の方法で共有


SET ANSI コマンド

Visual FoxPro SQL コマンドの = 演算子を使用して、長さが異なる文字列間の比較を行う方法を決定します。

構文

  
SET ANSI ON | OFF  

論争

オン
(ドライバーの既定値。Visual FoxPro の既定値は OFF です)。長い文字列の長さと等しくするために必要な空白を短い文字列に埋め込みます。 その後、2 つの文字列は、その長さ全体の文字と比較されます。 次の比較を検討してください。

'Tommy' = 'Tom'  

SET ANSI がオンの場合、'Tom' は 'Tom' になり、文字列 'Tom' と 'Tommy' は文字の文字と一致しないため、結果は False (.F.) になります。

== 演算子は、Visual FoxPro SQL コマンドの比較にこのメソッドを使用します。

オフ
短い文字列をブランクで埋め込まないことを指定します。 2 つの文字列は、短い文字列の末尾に達するまで文字と比較されます。 次の比較を検討してください。

'Tommy' = 'Tom'  

SET ANSI がオフの場合、比較は 'Tom' の後で停止するため、結果は True (.T.) になります。

注釈

SET ANSI は、SQL 文字列比較を行うときに、2 つの文字列の短い方が空白で埋め込まれるかどうかを判断します。 SET ANSI は == 演算子には影響しません。== 演算子を使用する場合、短い文字列は常に、比較のために空白で埋め込まれます。

文字列の順序

SQL コマンドでは、比較の 2 つの文字列の左から右の順序は、=または == 演算子の一方の側から他方の側への文字列の切り替えは関係ありませんが、比較の結果には影響しません。

こちらもご覧ください

SELECT - SQL コマンド
SET EXACT コマンド