我正在寻找sql语句中可以调用sql函数的所有可能位置。这是我第一次使用sql函数,在我的代码中我需要检测用户是否' input包含sql函数,如果是,则输入无效。
sql语句中的位置意味着SELECT
子句或其他子句,如FROM
,WHERE
......
我正在使用SQL Server
那么有没有建议在sql语句中检测sql函数或在语句中检测函数的所有可能位置?
答案 0 :(得分:1)
如果我理解了您的问题,那么您就会询问如何以及在何处检查用户输入的SQL代码。
其中:
我想您可能需要在用户界面中检查它,检查文本框或文件或用户的输入流。这不应该在sql server ASAIK
如何:
通常,您可以在SQL语句中使用参数,以便用户传递的任何值都由参数传递,如果它包含SQL代码,则不会执行。
答案 1 :(得分:1)
SQL
中的任何位置允许 SELECT
个功能,即SELECT
列表中WHERE
,JOIN
中的任何位置,GROUP BY
,HAVING
,ORDER BY
。
你需要一个SQL
解析器才能确定它是否是一个函数......