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