ASP.Net 2 データソースの一部:
SelectCommand="SELECT BU.P_GEAC_CORP_CD AS Corp_Code,
BU.Business_unit as Abbreviation,
CC.DEPTID AS Cost_Center,
CC.DESCR AS Description
FROM fstst.PS_P_CATR_BUDPT_VW CC,
fstst.ps_p_bus_unit_cnv BU
WHERE BU.Business_unit = CC.Business_unit">
これは、動作する GridView をフィードします。ディスプレイは、
CC.DESCR AS Description
テキスト (非数値) です。
テキストボックスを「contains」フィルターとして使用したい。つまり、ボックスに「Recovery」を入れると、データソースに追加させたい
AND CC.DESCR Like '%Recovery%'
SQLに。その行をハードコーディングすると、機能します。
しかし、私が追加すると
<SelectParameters>
<asp:ControlParameter ControlID="Dept_Name"
Name="DName"
PropertyName="Text"
Type="string" />
</SelectParameters>
SQLを変更しないと、行が返されません。それから私が置くと
AND CC.DESCR Like '%' + :DName + '%'
SQLに入力すると、テキストボックスが空白の場合に結果が得られず、文字を入力するとすぐにORA-01722:無効な番号が表示されます。