だから私はこのクエリを持っています:
var comm = @"SELECT * FROM `TABLE` ";
bool hasWhere = false;
if ( model.Serial > 0 ) {
comm += " WHERE `SERIAL` LIKE '%" + model.Serial + "%' ";
hasWhere = true;
}
if ( model.Id.HasValue && model.Id.Value > 0 ) {
if ( !hasWhere ) {
comm += " WHERE `NUIP` LIKE '%" + model.Id.Value + "%' ";
hasWhere = true;
} else
comm += " AND `NUIP` LIKE '%" + model.Id.Value + "%' ";
}
if ( model.Date.HasValue ) {
if ( !hasWhere ) {
comm += " WHERE `DATE` = '" + model.Date.Value + "' ";
hasWhere = true;
} else
comm += " AND `DATE` = '" + model.Date.Value + "' ";
}
....
....
....
SQLインジェクションなどに対するパラメータ化されたクエリについて読んだことがあります。(検索モデルに基づいて)動的な数のWHERE句があるとすると、クエリをパラメーター化するにはどうすればよいですか?WHERE a = @A AND b=@B...
ユーザーがすべての列に基づいて検索する必要がないため、配置できません。
何か案が?前もって感謝します。
PS: LINQまたはそれに類似したもの(-ビジネスルール-)は使用できません。