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
是文本(非数字)。
我想使用文本框作为“包含”过滤器,即,如果我在框中输入“恢复”,我希望添加数据源
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:当我将字符放入其中时,数字无效。