1
我想使这个ASP/SQL语句工作,但我不断得到ORA-01036:非法字符错误。所以,我假设我缺少SQL语法的转义字符或者这些行中的某个字符。非法字符错误为ASP.NET/Oracle
我将这段代码从我的C#代码转换而来,并将其编码为ASP。
<asp:SqlDataSource ID="EmployeeSqlDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
ProviderName="<%$ ConnectionStrings:ConnectionString.ProviderName %>"
OnSelecting="EmployeeSqlDataSource_Selecting"
SelectCommand="SELECT a.vax_user_id, b.person_id, b.email_id, b.last_nm, b.first_nm, b.parent_org_unit_cd, a.acceptance_date, a.emp_status_cd
FROM inet_own.fitness_rwl a, inet_own.employee_info_ldap_snap b
WHERE a.vax_user_id = b.vax_user_id
AND a.emp_status_cd like 'A'
AND UPPER(b.last_nm) LIKE UPPER('%:lastName%')
ORDER BY b.parent_org_unit_cd, a.acceptance_date
">
<SelectParameters>
<asp:ControlParameter ControlID="radTbLastName" Name="lastName" />
</SelectParameters>
</asp:SqlDataSource>
它应该是。 SelectParameters链接到一个Telerik文本框,该文本框捕获用户的文本/名称,然后将其用作一个变量,以将SQL语句内的lastName替换为文本框的文本值。 – ReiRei
惊讶于您的建议确实有效。我有C#代码背后,它不喜欢之前的%,所以我不得不做一个字符串变量添加%与用户输入,然后传递该变量。 – ReiRei