0

私は次のようなクエリを実行しています:

SELECT COLNAME FROM TABLEA GROUP BY COLNAME;

COLNAME時々ユーザーによって直接提供されるので、コードでSQLインジェクションを避けたいと思います。だから、私は私のクエリを次のように書くことが可能かどうか疑問に思っています:

SELECT ? FROM TABLEA GROUP BY ?;

別のオプションは、ユーザー入力をテーブルのすべての列名と一致させることですが、そのアプローチはこれを行うには悪い方法のようです。

4

3 に答える 3

0

列名、テーブル名、データ型名、または基本的にデータ以外のものにはパラメーター マーカーを使用できません。

返信はこちらからどうぞ..

于 2012-11-19T05:20:19.353 に答える
0

これはいけません。準備されたステートメントは、列名ではなく値を置き換えるためにあります。文字列を自分で作成する必要があります。

于 2012-11-17T23:43:13.133 に答える
0

使用するJdbcTemplate#queryForObject

私はいくつかの例を見つけました

于 2012-11-13T04:41:32.857 に答える