gpt4 book ai didi

sql - 如何在存储过程的t-sql动态语句中使用LIKE?

转载 作者:行者123 更新时间:2023-12-03 01:02:01 24 4
gpt4 key购买 nike

我尝试将 LIKE 关键字与包裹参数的 % 通配符一起使用,但我不确定如何在不破坏语句的情况下将 % 字符放入语句中。现在我有:

SET @SQLQuery = 'SELECT * FROM [tblApps] WHERE [firstName] LIKE %@search%'

我在 .net 应用程序中收到 SqlException 错误,显示“运行时‘@search’附近的语法不正确。如果删除 @search 参数周围的 % 字符,该错误就会消失。

最佳答案

% 字符必须位于搜索字符串中...

SET @search = '%' + @search + '%'
SET @SQLQuery = 'SELECT * FROM [tblApps] WHERE [firstName] LIKE @search'

请注意,以下方法也可以工作,但会引入潜在的 SQL 注入(inject)漏洞...

-- DON'T do this!
SET @SQLQuery = 'SELECT * FROM [tblApps] WHERE [firstName] LIKE ''%' + @search + '%'''

关于sql - 如何在存储过程的t-sql动态语句中使用LIKE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5383634/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com