morit****@razil*****
morit****@razil*****
2008年 1月 24日 (木) 17:21:06 JST
こんにちは!!
> * クエリ書式にエスケープ文字「\」が追加されました。
この点について補足します。
Senna1.1.0では、sen_query_open() の第一引数に渡される文字列に
「\」が含まれる場合の動作が、以前のバージョンから変更されています。
1.0.9以前: クエリ文字列中の「"」で括られた範囲内に「\」が含まれている場合、
「\」は単なる文字として解釈されます。
1.1.0以降: クエリ文字列中の「"」で括られた範囲(フレーズ)内に「\」が含まれている場合、
「\」は、エスケープ文字として以下のように解釈されます。
「\"」 : 「"」文字自身を表します。(フレーズの終端とみなされない)
「\\」 : 「\」文字自身を表します。
その他の場合 : 「\」の後続の文字自身を表します。
(注意: 「\n」は改行ではなく、「n」自身を表します)
「"」を含むフレーズをクエリで表現可能になりましたが、
文字としての「\」は、エスケープが必要になっていますのでご注意ください。
(SQL経由でクエリ文字列を渡す場合には、2重にエスケープが必要かもしれません‥)
--
morita