2017-07-18 21 views
0

ASP.NET MVCを使用していますが、%@ stype%のように@stypeにワイルドカードを入れたいと思いますが、ここでコードを入力する場所はわかりませんが、私のコードをもっと見たいと思ったらコメントしてください。助けてください。パラメータ付きSQLクエリのワイルドカード

モデル:私はCHARINDEXを使用することをお勧めし

public class SearchParameters 
{ 
    public string sarcode { get; set; } 
    public string stype { get; set; } 
    public SearchParameters() 
    { 
     this.sarcode = string.Empty; 
     this.stype = string.Empty; 
    } 

    internal List<SqlParameter> ToSqlParameterList() 
    { 
     List<SqlParameter> parameters = new List<SqlParameter>(); 
     parameters.Add(new SqlParameter("@sarcode", this.sarcode ?? string.Empty)); 
     parameters.Add(new SqlParameter("@stype", this.stype ?? string.Empty)); 
     return parameters; 
    } 
} 

クエリ

SELECT sarcode,stype,amount,filterno FROM tblsar WHERE ((sarcode = @sarcode OR @sarcode = '') AND (stype = @stype OR @stype = '')) 

Javascriptを

var table = $('#SARDatatable').DataTable({ 
    "processing": true, 
    dom: "<'row'<'col-sm-6'l><'col-sm-6'f>>" + 
     "<'row'<'col-sm-12'tr>>" + 
     "<'row'<'col-sm-2'i><'col-sm-5'B><'col-sm-5'p>>", 
    buttons: [ 
     'copyHtml5', 
     'excelHtml5', 
     'csvHtml5', 
     'pdfHtml5', 
     'print' 
    ], 
    "ajax": { 
     "url": '/Home/GetAllSAR', 
     "type": "POST", 
     "datatype": "json", 
     "data": function (d) { 
      d.searchParameters = {}; 
      d.searchParameters.sarcode = $('#txtSAR').val(); 
      d.searchParameters.stype = $('#txtSType').val(); 
     } 
    }, 
    "columns": [ 
     { "data": "sarcode", "autoWidth": true }, 
     { "data": "stype", "autoWidth": true }, 
     { "data": "amount", "autoWidth": true }, 
     { "data": "filterno", "autoWidth": true } 
    ] 
}); 
+0

のようなキーワードを使用してみてください、あなたのSQLコードであります'%'、@stype、 '%')... ' – GarethD

+0

@GarethDあなたの答えとRichard Boyceの両方が本当です、ありがとう – Hanzou

答えて

1

代わりに。例

WHERE CHARINDEX(@sarcode, sarcode) > 0 
0

にとっては、私はあなただけで置き換える `とSTYPE = @stype ...` `でAND STYPE LIKE CONCAT(することができると思う

WHERE ((sarcode like '%' + @sarcode + '%' OR @sarcode = '') 
関連する問題