WEBアプリとSQLServerでSELECTをするときに不正をされないように
SELECT * FROM DB WHERE DB.A = 検索文字
を
SELECT * FROM DB WHERE DB.A= @A
のようにして、@Aを後で指定しますが、
SELECT * FROM DB WHERE LIKE '%検索文字'
のようにLIKE検索の場合うまくいきません。
どのように記述したらいいのでしょうか?
SELECT * FROM DB WHERE DB.A LIKE @A --> 駄目
SELECT * FROM DB WHERE DB.A LIKE '%@A' --> 駄目
No.2ベストアンサー
- 回答日時:
どうやっていてダメなのか読みきれていませんが、以下は参考になりますか?
CREATE TABLE DB ([A][varchar](10))
INSERT INTO DB VALUES ('abcde')
INSERT INTO DB VALUES ('bcdef')
DECLARE @A varchar(12)
SET @A='%def'
SELECT * FROM DB WHERE DB.A LIKE @A
SET @A='def'
SELECT * FROM DB WHERE DB.A LIKE '%'+@A
DROP TABLE DB
No.1
- 回答日時:
説明が曖昧ですけど。
。。>LIKE検索の場合うまくいきません。
「うまくいかない」とは、具体的にどうなるのですか?
@Aのデータ型は、何ですか?
VARCHARで後に空白がないならですが、CHARであったりで、後に空白があると、その個数分の空白があるデータのみが検索対象になります。
この回答への補足
失礼いたしました。
SELECT * FROM DB WHERE DB.A LIKE @A --> 結果は0件
SELECT * FROM DB WHERE DB.A LIKE '%@A' --> 結果は0件
つまり該当するものがないと返してきます。
>@Aのデータ型は、何ですか?
varCharです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) 実行時エラー3131 FROM 句の構文エラーです について 7 2022/06/13 15:45
- PHP php my adminより取り出したデータ表示 2 2022/06/15 11:56
- Access(アクセス) docmd.gotorecordを起動するには 5 2022/06/17 15:20
- その他(プログラミング・Web制作) pythonでDBのカラム名で取得したオブジェクトの値を表示したい 1 2022/05/13 03:41
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- PHP DBのハッシュ化したパスワードをpassword_verifyで戻し照合したのですが上手く行きません 2 2023/02/06 13:24
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スペースを検索したい
-
WHERE条件の最終桁のスペースに...
-
Trimの使い方
-
select文のwhere句に配列を入れ...
-
アンケートメールをACCESSに取...
-
ORACLEの「DECODE」と同じ意味...
-
差し込み後、元データを変更し...
-
外部参照してるキーを主キーに...
-
フィルターかけた後、重複を除...
-
エクセルで最後の文字だけ置き...
-
SQLで特定の項目の重複のみを排...
-
for whichの使い方
-
datetime型でNULL値を入れたい。
-
前置可能な語句を含む複数の修...
-
SQL文で、合計が0のレコードを...
-
INSERT文でフィールドの1つだ...
-
速度が低下し無効になったアド...
-
SQLサーバから、項目の属性(型...
-
EXISTSを使ったDELETE文
-
SQLで列名を変数にできないでし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スペースを検索したい
-
顧客データベースを作る場合、...
-
あいまい検索で英文字の全角半...
-
末尾の全角スペースの削除
-
INSERT文などの列名などの半角...
-
select文のwhere句に配列を入れ...
-
ORACLEの「DECODE」と同じ意味...
-
SQLServer2005のストアドプロシ...
-
ストアドの戻り値で配列を返す方法
-
外部結合で取得した項目にNVL関数
-
WHERE条件の最終桁のスペースに...
-
MYSQL 右埋め 半角スペース
-
DTSパッケージについて
-
セッション変数に格納されてい...
-
Trimの使い方
-
アンケートメールをACCESSに取...
-
EXCELのVBA NULL、スペ...
-
ストアドプロシジャで配列
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
おすすめ情報