首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

存储过程中的 LIKE '%@XXXX%' 模糊搜索有关问题,请大家帮小弟我看看咋回事

2012-02-14 
存储过程中的 LIKE %@XXXX% 模糊搜索问题,请大家帮我看看怎么回事!ALTERPROCEDUREdbo.search_result_com

存储过程中的 LIKE '%@XXXX%' 模糊搜索问题,请大家帮我看看怎么回事!
ALTER   PROCEDURE   dbo.search_result_cominfo   @add_city   int,@com_name   varchar(50)

AS
SELECT   userid,   user_company,   user_realname,   user_tel,   user_mobi,   user_faxFROM   User_Table
WHERE   (user_city   =   @add_city)   AND   (user_company   LIKE   '%@com_name% ')
RETURN

怎么都搜索不到东西,数据库有符合条件的记录呀。请大家帮我看看怎么回事!

[解决办法]
要动态执行sql
转换成字符串
[解决办法]
LIKE '%@com_name% '==> LIKE '% ' + @com_name + '% '
[解决办法]
user_company LIKE '% '+@com_name+ '% '
[解决办法]
user_company LIKE '% ' + @com_name + '% '
[解决办法]
LIKE '%@com_name% '

==>

LIKE '% ' + @com_name + '% '


[解决办法]
LIKE '%@com_name% '
改成
like '% ' + @com_name+ '% '
[解决办法]
ALTER PROCEDURE dbo.search_result_cominfo @add_city int,@com_name varchar(50)

AS
SELECT userid, user_company, user_realname, user_tel, user_mobi, user_faxFROM User_Table
WHERE (user_city = @add_city) AND (user_company LIKE '% ' + @com_name+ '% ')
RETURN
就可以了 因为 '%@com_name% '会被错误的当成一整个字符串
[解决办法]
jf

热点排行