DB SQL 検索の変数を’’’で囲うか
SQL文で検索したい文字を’’で囲い
WHERE 商品備考 collate JAPANESE_CI_AS like '%長谷川%'
のようにすれば正しく動きますが、検索して欲しい文字を''で囲わず
WHERE 商品備考 collate JAPANESE_CI_AS like %長谷川%
とするとエラーになります。前者が正しいのは理解しています。
今迄、Magic上のDB SQLの部分に
:A collate JAPANESE_CI_AS like :B のように記述しておりました。
でもこれって
商品備考 collate JAPANESE_CI_AS like %長谷川% と一緒ですよね。
今後は
:A collate JAPANESE_CI_AS like ':B' といった具合に
検索して欲しい変数部分はシングルコーテーションで囲いたいと思います。
このようにすれば応答無しにならず、目的通り探せて処理も正常に稼働しました。
-
ISHIJIMAさん コメントありがとうございます。
最初の投稿はDB SQL でしたが、
今回は SQLコマンドで
WHERE 商品名 = :1 のように記述する場合、
WHERE 商品名 = ':1' とはやってきませんでしたが
トラブルはありませんでした、というのは勘違いでした。
(今迄、SQLコマンドの所で、文字型のWHEREを書く事がほぼ無かった。)
文字型を範囲指定する場合、以下では駄目でした。
WHERE 商品名 = :1
以下のようにシングルコーテーションで囲うのが正解でした。
WHERE 商品名 = ’:1 '
サインインしてコメントを残してください。
コメント
1件のコメント