我的存储过程是这样写的,前面一直没出问题,今天刚输入“西 瓜”就出错了,提示为:
在 '西' 附近发生语法错误。在搜索条件 '西 瓜' 中应为 '''''。
请高人指点一下。
set @sqlStr=N'select * from fruit where Contains(title,'''+@title+''')'
EXEC sp_executesql @sqlStr
在 '西' 附近发生语法错误。在搜索条件 '西 瓜' 中应为 '''''。
请高人指点一下。
set @sqlStr=N'select * from fruit where Contains(title,'''+@title+''')'
EXEC sp_executesql @sqlStr
解决方案 »
- vs 2005中怎么找不到using NUnit.Framework的引用!在线等!
- 问个div滚动条的问题
- ADO.NET 问题
- 在线等,关于datalist。
- Remoting远程传递对象问题(急)
- 如何触发DataList或Repeater内嵌的DataList或Repeater控件的数据绑定事件?
- 请教一个问题
- 问一个关于继承的理论问题
- 大家来看看这个gridview分页的页面问题出现在哪里,点击另一页码的时候反应非常慢。
- 我的asp.net服务出现以下错误,请大家帮忙看看。
- LinkButton[] l=new LinkButton[]; 的问题----------请求大家的帮助!
- 给byte[]赋空值会提示:操作数类型冲突: nvarchar 与 image 不兼容 如何给空值插入到image字段
A. 使用带有 <simple_term> 的 CONTAINS
下面的示例查找包含词"bottles"且价格为 $15.00 的所有产品。USE Northwind
GO
SELECT ProductName
FROM Products
WHERE UnitPrice = 15.00
AND CONTAINS(QuantityPerUnit, 'bottles')
GOB. 在 <simple_term> 中使用 CONTAINS 和短语
下面的示例返回包含短语 "sasquatch ale" 或 "steeleye stout" 的所有产品。USE Northwind
GO
SELECT ProductName
FROM Products
WHERE CONTAINS(ProductName, ' "sasquatch ale" OR "steeleye stout" ')
GOC. 使用带有 <prefix_term> 的 CONTAINS
下面的示例返回所有满足该条件的产品名称:这些产品名称至少含有一个以 ProductName 列中前辍 Choc 起始的词。USE Northwind
GO
SELECT ProductName
FROM Products
WHERE CONTAINS(ProductName, ' "choc*" ')
GOD. 使用带有 <prefix_term> 的 CONTAINS 和 OR
下面的示例返回包含字符串 "sea" 或 "bread" 的所有分类描述。USE Northwind
SELECT CategoryName
FROM Categories
WHERE CONTAINS(Description, '"sea*" OR "bread*"')
GOE. 使用带有 <proximity_term> 的 CONTAINS
下面的示例返回在词 "spread" 附近有词 "Boysenberry" 的所有产品名称。USE Northwind
GO
SELECT ProductName
FROM Products
WHERE CONTAINS(ProductName, 'spread NEAR Boysenberry')
GOF. 使用带有 <generation_term> 的 CONTAINS
下面的示例搜索具有 dry 形式的词的所有产品:dried 和 drying 等等。USE Northwind
GO
SELECT ProductName
FROM Products
WHERE CONTAINS(ProductName, ' FORMSOF (INFLECTIONAL, dry) ')
GOG. 使用带有 <weighted_term> 的 CONTAINS
下面的示例搜索包含词 spread、sauces 或 relishes 以及给予每个词不同加权的所有产品名称。USE Northwind
GO
SELECT CategoryName, Description
FROM Categories
WHERE CONTAINS(Description, 'ISABOUT (spread weight (.8),
sauces weight (.4), relishes weight (.2) )' )
GOH. 使用带变量的 CONTAINS
下例使用变量而非特定的搜索术语。USE pubs
GO
DECLARE @SearchWord varchar(30)
SET @SearchWord ='Moon'
SELECT pr_info FROM pub_info WHERE CONTAINS(pr_info, @SearchWord)
98star(~瞬间的流星也是美的!)
可否解释一下,下面这条语句出错的原因。
select * from fruit where Contains(title,'西 瓜')
select * from fruit where Contains(title,'西 瓜')
如果这样就是正确的,为什么?
select * from fruit where Contains(title,'"西 瓜"')
我查到了,CONTAINS中的搜索条件是一个短语时,即单字节语言中由空格和可选的标点符号分隔的一个或多个连续的词,这时要用双引号期其括起来,否则会引起上述错误。
大西瓜,自己找出答案虽然比较有趣,可是比较费时啊。