全文索引问题(整个数据库)

outwindows 2003-07-12 03:51:35
我在论坛上搜索了一下,也看了 大力 的经典文章,都是讲的对单个表进行全文索引,我想请教各位,能不能是对整个数据库的全文检索,如果不能(或没有这个功能),我要实现对整个数据库的检索应该怎么做呢?请各位大侠指教!!!谢啦!!!在线等待!!!!
...全文
89 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyiding23 2003-07-22
  • 打赏
  • 举报
回复
不是什么全能自动的啦,兄弟
liyiding23 2003-07-22
  • 打赏
  • 举报
回复
一个一个建啊,建好了一个一个SELECT。
outwindows 2003-07-22
  • 打赏
  • 举报
回复
散分.
outwindows 2003-07-14
  • 打赏
  • 举报
回复
谢谢各位的参与,可是我想要问的问题还是未能解决,请继续,分不够可再开一栏.
CrazyFor 2003-07-14
  • 打赏
  • 举报
回复

创建和维护数据库


全文索引
对 Microsoft® SQL Server™ 2000 数据的全文支持涉及两个功能:对字符数据发出查询的能力和创建及维护基础索引以简化这些查询的能力。

全文索引在许多地方与普通的 SQL 索引不同。

普通 SQL 索引 全文索引
存储时受定义它们所在的数据库的控制。 存储在文件系统中,但通过数据库管理。
每个表允许有若干个普通索引。 每个表只允许有一个全文索引。
当对作为其基础的数据进行插入、更新或删除时,它们自动更新。 将数据添加到全文索引称为填充,全文索引可通过调度或特定请求来请求,也可以在添加新数据时自动发生。
不分组。 在同一个数据库内分组为一个或多个全文目录。
使用 SQL Server 企业管理器、向导或 Transact-SQL 语句创建和除去。 使用 SQL Server 企业管理器、向导或存储过程创建、管理和除去。


这些差异使大量管理任务变得不可缺少。全文管理是在几个层次上实施的:

服务器
可以对服务器范围的某些属性(如 resource_usage)加以设置,以便增加或减少全文服务所使用的系统资源数量。



说明 全文引擎作为名为 Microsoft 搜索的服务在 Microsoft Windows NT® Server 和 Microsoft Windows® 2000 Server 上运行。对于 Microsoft SQL Server 个人版,Microsoft 搜索服务不可用。尽管这意味着 Microsoft 搜索服务既未安装在 Microsoft Windows 95/98 上,也未安装在 Windows NT 工作站或 Windows 2000 Professional 客户端上,但这些客户端在连接到 SQL Server 标准版安装或企业版实例时可以使用这项服务。

数据库
必须启用数据库才能使用全文服务。可以在已启用的数据库中创建和除去一个或多个全文目录的元数据。

全文目录
全文目录包含数据库中的全文索引。每个目录可以用于数据库内的一个或多个表的索引需求。该目录中的索引是使用这里介绍的管理功能来填充的。(全文目录必须驻留在与 SQL Server 实例相关联的本地硬盘驱动器上。不支持可移动的驱动器、软盘和网络驱动器)。在每个服务器上最多可创建 256 个全文目录。



说明 Windows NT 故障转移群集环境完全支持全文索引。有关更多信息,请参见在故障转移群集中运行全文查询。


首先,必须为全文支持启用表。然后,为与该表相关联的全文索引创建元数据(如表名及其全文目录)。表启用后,可以用为全文支持而启用的列中的数据填充它。如果表的全文定义被更改(例如,添加一个也将为全文检索而索引的新列),则必须重新填充相关的全文目录以使全文索引与新的全文定义同步。


可以从非活动的注册表中添加或除去支持全文查询的列。

在所有这些级别上,可使用工具检索元数据和状态信息。

和常规 SQL 索引一样,当在相关表中修改数据时,可自动更新全文索引。或者,也可以适当的间隔手工重新填充全文索引。这种重写可能既耗时又大量占用资源,因此,在数据库活动较少时,这通常是在后台运行的异步进程。

应将具有相同更新特性的表(如更改少的与更改多的,或在一天的特定时段内频繁更改的表)组合在一起,并分配给相同的全文目录。通过以此方法设置全文目录填充调度,使得全文索引和表保持同步,且在数据库活动较多时不对数据库服务器的资源使用产生负面影响。

为全文目录中的表安排全文索引的位置是非常重要的。在为全文目录指定表时,应该注意下列基本原则:

始终选择可用于全文唯一键的最小唯一索引。(4 个字节且基于整数的索引是最佳的。)这将显著减少文件系统中 Microsoft 搜索服务所需要的资源。如果主键很大(超过 100 字节),可以考虑选择表中其它唯一索引(或创建另一个唯一索引)作为全文唯一键。否则,如果全文唯一键的大小达到允许的上限(450 字节),全文填充将无法继续进行。


如果进行索引的表有成千上万行,请将该表指定给其自己的全文目录。


应该考虑对其进行全文索引的表中发生的更改数以及表的行数。如果要更改的总行数,加上上次全文填充期间表中出现的行数达到成千上万行,请将该表指定给其自己的全文目录。

请参见

sp_fulltext_table

©1988-2000 Microsoft Corporation。保留所有权利。
nbshiny 2003-07-14
  • 打赏
  • 举报
回复
我也想知道结果,能告诉我吗?
我要做一个站点内论文搜索,可以实现按论文的内容 来搜索,可以实现吗?
nboys 2003-07-14
  • 打赏
  • 举报
回复
只能对表完成
wdsimon 2003-07-14
  • 打赏
  • 举报
回复
关注。
outwindows 2003-07-14
  • 打赏
  • 举报
回复
请教各们大侠,我要实现对整个数据库的 全文搜索 功能该如何做呀,请指点一下思路!Waiting online...
mnm0756 2003-07-12
  • 打赏
  • 举报
回复
sql server的全文索引对单表做,orcale也是做同样的工作
pengdali 2003-07-12
  • 打赏
  • 举报
回复
你对全文索引的概念理解错了,它不是你想的对整个数据库索引:

全文索引
对 Microsoft® SQL Server™ 2000 数据的全文支持涉及两个功能:对字符数据发出查询的能力和创建及维护基础索引以简化这些查询的能力。

全文索引在许多地方与普通的 SQL 索引不同。

普通 SQL 索引 全文索引
存储时受定义它们所在的数据库的控制。 存储在文件系统中,但通过数据库管理。
每个表允许有若干个普通索引。 每个表只允许有一个全文索引。
当对作为其基础的数据进行插入、 将数据添加到全文索引称为填充,
更新或删除时,它们自动更新。 全文索引可通过调度或特定请求来请求,
也可以在添加新数据时自动发生。
不分组。 在同一个数据库内分组为一个或多个全文目录。
使用 SQL Server 企业管理器、向导或 使用 SQL Server 企业管理器、
Transact-SQL 语句创建和除去。 向导或存储过程创建、管理和除去。
outwindows 2003-07-12
  • 打赏
  • 举报
回复
好的,等待...!
cxz7531 2003-07-12
  • 打赏
  • 举报
回复
up 我也想知道,SQL Server好像可以建立全文检索,回去研究研究再来
outwindows 2003-07-12
  • 打赏
  • 举报
回复
怎么这么久了没人理,我等到花儿也谢了!!

34,593

社区成员

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

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