 |
|
|
SQL Server 2000 全文检索技术
|
|
|
|
|
SQL Server 2000 全文检索技术
发布者:
rain 发布日期:2008/4/25
浏览次数:3158
次
|
|
|
|
|
BC管理器中的“系统DSN”中,单击“添加”,选择“SQL Server”。在数据源名中输入“EnglishData”, 然后进行客户配置。 第八步,如果以后对表Papers进行任何的修改(包括添加、删除记录和对原记录进行编辑),都要重复第六步的操作。这一步是为了保证全文索引库能够与表Papers的修改同步。 以上是建立全文索引的全过程。完成建立后,即可以使用标准的T—SQL语句对其进行全文检索。 2.2 在web平台上进行全文检索 虽然使用T—sQL语句可以很方便地进行全文检索,但笔者考虑到不是所有的用户都掌握了T—sQL语句,因此为方便用户检索,笔者建立了一个基于Web界面的全文检索平台。用户只需将检索词提交给Web服务器,服务器使用ASP调用ADO控件来对SQL Server2000数据库进行查询,并将检索结果以Web页面的方式返回给用户。 ASP(Active Server Pages)是微软公司建立的一套服务器端脚本环境。设计人员可以结合HTML、ASP指令和ActiveX控件建立动态、交互且高效的Web服务器应用程序。由于所有的程序都嵌入HTML中且在服务器端执行,因此不必担心客户端的浏览器能否运行程序。同时,它还具有简单、易开发、兼容性好等优点。ADO(ActiveX Data Object,ActiveX数据对象)是一个ASP内置的ActiveX服务器组件(ActiveX Server Component),用于数据库访问,可把它与ASP结合起来,建立提供数据库信息的网页内容,对数据库进行查询、插入、更新、删除等操作。ADO对象可以操作所有ODBC驱动程序存取的数据源格式。同时,ADO还具有简单易用、速度快等优点。 SQL Server 2000的全文检索服务可以支持布尔检索和加权检索等高级检索。用ASP可以实现这些检索功能。 3 全文检索语句CONTAINS和FREETEXT的使用 全文检索使用户可以高效检索存储在数据库的char、varchar、text、ntext、nchar、nvarchar等数据类型列中的文本数据。在进行全文检索之前,应建立和填充数据库全文索引。 3.1 全文索引 为了支持全文索引操作,SQL Server 7.0新增了一些新的存储过程和Transact-SQL语句。使用这些存储过程创建全文索引的具体步骤如下(括号内为每步所调用的存储过程名称): (1)启动数据库的全文处理功能(sp_fulltexLdatabase); (2)建立全文目录(sp_fulhexLcatalog); (3)在全文目录中注册需要全文索引的表(sp_fulltext table); (4)指出表中需要全文检索的列名(sp_full—texLeolumn); (5)为表创建全文索引(sp_fulltexLtable); (6)填充全文目录(sp_fulltext_catalog) 。 下面举例说明: 在本例中,对test数据库book表中title列和notes列建立全文索引。 //首先先启动SQL Server的全文搜索服务。 use test //打开数据库 go //打开全文索引支持 execute sp_fulltext_database ‘enable’ //建立全文目录ft_pubs execute sp_fulltext_catalog ‘ft_test’,‘create’ //为titles表建立全文索引数据元,pk_title为book表中由主键所建立的唯一索引,此参数必须。 execute sp_fulltext_table ‘book’,‘create’,‘ft_test’,‘pk_title’ //设置全文索引列名 execute sp_fulltext_eolumn ‘book’,‘title’,‘ add’ execute sp_fulltext_ column ‘book’,‘notes’,‘add’ //建立全文索引 execute sp_fulltexLtable R
|
常见问题 | 我要留言 | 添加到收藏 |
|
|
|
|
|
|