HTML/XML 数据的 SQL 全文搜索
我在 cms 数据库(SQL 2005)上有一个 sql 全文目录。数据库将 CMS 页面内容保存在 ntext 列中,该列是全文目录的一部分。正如预期的那样,搜索考虑了页面内容中的 xml 标签,因此搜索“H1”将返回所有带有 H1 标签的页面。
是否可以在全文搜索中应用过滤器以仅索引 xml 标记中的数据。
我可以看到 SQL 全文搜索可以索引/搜索 .html 二进制类型或 xml 列。然而,正如您所看到的,设置与此略有不同。
非常感谢,
亚当
I have a sql full text catalog on a cms database (SQL 2005). The database holds the CMS page content within a ntext column which is part of the full text catalog. As expected the searching takes into account the xml tags within the page content so searching for "H1" returns all the pages with H1 tags.
Is it possible to apply filters within the full text search to only index data within the xml tags.
I can see it is possible for SQL full text search to index/search .html binary types or xml columns. However as you can see the setup is slightly different to this.
Many Thanks,
Adam
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
遗憾的是,您无法更改 text/varchar ntext/nvarchar 列上的默认“文本”iFilter。
如果您无法将列的数据类型更改为 varbinary,则下一个最佳选择可能是将 HTML 标记名称添加为停用词,以便在索引和搜索期间忽略它们。
我应该补充一点,ntext 已被弃用,因此无论如何您最终都需要摆脱它。
Unfortunately, you can't change away from the default "text" iFilter on a text/varchar ntext/nvarchar column.
If you can't change the data type of the column to varbinary, your next-best bet might be to add the HTML tag names as stop words, so they get ignored during indexing and searching.
I should add that ntext has been deprecated, so you will need to move away from it eventually anyway.