全文索引,使用变量问题

bhtfg538 2009-03-16 10:37:40


declare @s Nvarchar(100)
set @s='"3" OR "M" OR "MP" OR "MP3" OR "P" OR "P3" OR "本" OR "笔" OR "笔记" OR "笔记本 OR "记"'

SELECT * FROM (SELECT xxxx FROM xx item WHERE CONTAINS(item.[ItemName],@s)
--为什么不行,但是 ,出错提示为消息 7630,级别 15,状态 3,第 5 行
--在全文搜索条件 '"3" OR "M" OR "MP" OR "MP3" OR "P" OR "P3" OR "本" OR "笔" OR "笔记" OR "笔记本 OR "记"' 内的 '记' 附近存在语法错误。

declare @s Nvarchar(100)
set @s='"3" OR "M" OR "MP" OR "MP3" OR "P" OR "P3" OR "本" OR "笔" OR "笔记" OR "笔记本 OR "记"'

SELECT * FROM (SELECT xxxx FROM xx item WHERE CONTAINS(item.[ItemName],‘"3" OR "M" OR "MP" OR "MP3" OR "P" OR "P3" OR "本" OR "笔" OR "笔记" OR "笔记本 OR "记"’)
可以查询
...全文
78 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
bhtfg538 2009-03-16
  • 打赏
  • 举报
回复
晕 ,字符 被 截取了,,汗。。
因为EXEC SP_EXECUTESQL
里面指定了长度
bhtfg538 2009-03-16
  • 打赏
  • 举报
回复
2005的 数据库 ,大家看看吧
bhtfg538 2009-03-16
  • 打赏
  • 举报
回复
使用EXEC SP_EXECUTESQL
大家帮忙看下啊
sail1985 2009-03-16
  • 打赏
  • 举报
回复
呵呵
bhtfg538 2009-03-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 htl258 的回复:]
SQL codeexec('SELECT * FROM (SELECT xxxx FROM xx item WHERE CONTAINS(item.[ItemName],'+@s+')')
[/Quote]

不使用EXEC
bhtfg538 2009-03-16
  • 打赏
  • 举报
回复
发错了字符串,,

使用动态EXEC 我也不知道
难道你不知道 不能使用 查询计划哦?

SELECT * FROM sys.syscacheobjects
自己看
bhtfg538 2009-03-16
  • 打赏
  • 举报
回复
"3" OR "M" OR "MP" OR "MP3" OR "P" OR "P3" OR "本" OR "笔" OR "笔记" OR "笔记本" OR "记"
htl258_Tony 2009-03-16
  • 打赏
  • 举报
回复
exec('SELECT * FROM (SELECT xxxx FROM xx item WHERE CONTAINS(item.[ItemName],'+@s+')')

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧