我将使用存储过程搜索我的数据库 (SQL Server 2008)。我的用户可以在文本框中输入关键字(,
例如,可以使用分隔关键字)。
目前我正在使用这样的东西:
keyword like N"%'+@SearchQuery%'%"
(keyword
是nvarchar
我表中的一列,@SearchQuery
是我的存储过程的输入)
它工作得很好,但如果用户输入几个关键字怎么办:苹果、橙子、香蕉
我应该限制关键字的数量吗?如果我有多个关键字,我应该如何编写存储过程?我应该如何将我的用户输入传递给存储过程?我应该作为一个完整的短语传递apple, orange, banana
,然后我应该在我的存储过程中解析它们,或者我应该分开我的关键字并发送 3 个关键字?如何查询这 3 个关键字?一个for循环?
执行此类查询的最佳做法是什么?
谢谢