2011-02-01 1 views
1

Web検索フォームがあります。検索ボックスに検索を送信すると、 結果が返されますが、ファイル名に%が含まれています。例えば、 。元のファイル名はabc.jpegなので、返される結果は%bcになります。 またはフォルダが見つかった場合は、フォルダ名と同じです。 フォルダ名がjackの場合、結果はja%ckになります。 テキストボックスがあります(検索ボックスとして、検索テキストボックスの値を次のように設定しています)<%検索テキスト%> お読みいただきありがとうございます。 私はAsp.net、C#、Access DBを使用しています。ファイル名またはフォルダ名の途中で予期せず%文字が追加される

コード:

iscBuilder.AddSelect("* "); 
     iscBuilder.AddFrom("[table1] "); 
     iscBuilder.AddWhereClause("(column_name like('%" + pQuery + "%') or column_name like('%" + pQuery + "%') or column_name like('" + pQuery + "%') or column_name like('" + pQuery + "%'))"); 
     iscBuilder.AddWhereClause("(column_name like('" + path + "') or column_name like('" + path + "')) order by column_name"); 
     OleDbConnection sqlconConnection = (OleDbConnection)DatabaseConnection.Instance.GetConnection(); 
     OleDbCommand sqlcmdCommand1 = new OleDbCommand(iscBuilder.ToString(), sqlconConnection); 
     sqlcmdCommand1.CommandType = CommandType.Text; 
This is how i call the function: public XmlDocument GetSearchResults(string pQuery, string path,int from , int to) 
    { 
     List <T> ts= T.GetF().Getresult(pQuery, path); 

     return createXMLThumnails(thmbNails,from , to); 

    } 

が素敵な一日

+0

検索はどのように行われますか?検索のコードを投稿できますか? – Oded

+0

最初は、これは何とかHTMLエンコーディングによって行われたと思っていましたが、明らかにそうではありません。 –

+0

@oded:SQLクエリを投稿し、検索の実行方法を示します。 – safi

答えて

1

をお持ちのあなたのデータを取得するために、パラメータ化クエリまたはストアドプロシージャを使用してみてください - このすべて参加した文字列をSQL文を作るためには、非常に手間のかかると問題があります。

Parameterised Queriesまたはストアドプロシージャを使用して見てください。

関連する問題