sp_help_fulltext_system_components (Transact-SQL)
适用于:SQL Server Azure Synapse Analytics
返回注册的断字符、筛选器和协议处理程序的信息。 sp_help_fulltext_system_components
还返回使用指定组件的数据库和全文目录的标识符列表。
语法
sp_help_fulltext_system_components
[ { 'all' | [ @component_type = ] N'component_type' } ]
[ , [ @param = ] N'param' ]
[ ; ]
参数
'all'
返回所有全文组件的信息。
[ @component_type = ] N'component_type'
指定组件的类型。 @component_type是 sysname,可以是以下选项之一:
wordbreaker
filter
protocol handler
fullpath
如果指定了完整路径, 则还必须使用组件 DLL 的完整路径指定@param 或返回错误消息。
[ @param = ] N'param'
@param为 sysname,默认值为 NULL
. 根据组件类型, @param 是以下选项之一:
- 区域设置标识符 (LCID)
- 带前缀的
.
文件扩展名 - 协议处理程序的完整组件名称
- 组件 DLL 的完整路径
返回代码值
0
(成功)或 1
(失败)。
结果集
为系统组件返回下列结果集。
列名称 | 数据类型 | 描述 |
---|---|---|
componenttype |
sysname | 组件的类型。 以下选项之一: -滤波器 - 协议处理程序 - 断字器 |
componentname |
sysname | 组件的名称 |
clsid |
uniqueidentifier | 组件的类标识符 |
fullpath |
nvarchar(256) | 指向组件位置的路径。 NULL = 调用方不是 serveradmin 固定服务器角色的成员 |
version |
nvarchar(30) | 组件的版本 |
manufacturer |
sysname | 组件的制造商名称 |
仅当存在一个或多个使用 @component_type的全文目录时,才会返回以下结果集。
列名称 | 数据类型 | 说明 |
---|---|---|
dbid |
int | 数据库的 ID |
ftcatid |
int | 全文目录的 ID |
权限
需要公共角色的成员身份;但是,用户只能查看其具有 VIEW DEFINITION 权限的全文目录的相关信息。 只有 serveradmin 固定服务器角色的成员才能在列中查看值fullpath
。
注解
此方法在准备升级时尤为重要。 在特定数据库中执行存储过程,并使用输出来确定特定目录是否受升级的影响。
示例
A. 列出所有全文系统组件
以下示例列出了在服务器实例上注册的所有全文系统组件。
EXEC sp_help_fulltext_system_components 'all';
GO
B. 列出断字符
下面的示例列出了在服务实例上注册的所有断字符。
EXEC sp_help_fulltext_system_components 'wordbreaker';
GO
°C 确定是否注册了特定的断字符
以下示例列出在系统上安装并注册到服务实例上的土耳其语言(LCID = 1055)的断字符。 此示例指定参数名称、 @component_type和 @param。
EXEC sp_help_fulltext_system_components @component_type = 'wordbreaker', @param = 1055;
GO
默认情况下,不会安装此断字符,因此结果集为空。
D. 确定是否注册了特定筛选器
以下示例列出组件的筛选器 .xdoc
(如果组件在系统上手动安装并在服务器实例上注册)。
EXEC sp_help_fulltext_system_components 'filter', '.xdoc';
GO
默认情况下,此筛选器未安装,因此结果集为空。
E. 列出特定的 DLL 文件
以下示例列出了默认安装的特定 .ddl 文件 nlhtml.dll
。
EXEC sp_help_fulltext_system_components 'fullpath',
'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn\nlhtml.dll';
GO