我建了全文索引,咱个搜不到数据? 如题我用like可以搜到数据但用CONTAINS(title,'"&key&"')就任何数据都没有注:全文索引是启用的了,也填充了的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SELECT * FROM testindex WHERE CONTAINS(nm, '麦蒂') 在进行全文检索之前,必须先建立和填充数据库全文索引。为了支持全文索引操作,SQL Server 7.0新增了一些存储过程和Transact-SQL语句。使用这些存储过程创建全文索引的具体步骤如下(括号内为调用的存储过程名称):1. 启动数据库的全文处理功能(sp_fulltext_database);;2. 建立全文检索目录(sp_fulltext_catalog);3.在全文检索目录中注册需要全文索引的表(sp_fulltext_table);4. 指出表中需要全文检索的列名(sp_fulltext_column);;5. 为表创建全文索引(sp_fulltext_table);;6. 填充全文检索目录(sp_fulltext_catalog)。下面举例说明如何创建全文索引,在本例中,对Test数据库Book表中Title列和Notes列建立全文索引。use test //打开数据库//打开全文索引支持,启动SQL Server的全文搜索服务execute sp_fulltext_database 'enable'//建立全文检索目录ft_testexecute sp_fulltext_catalog 'ft_test', 'create'为Title列建立全文索引数据元,pk_title为Book表中由主键所建立的唯一索引,这个参数是必需的。execute sp_fulltext_table 'book','create', 'ft_test','pk_title'//设置全文索引列名execute sp_fulltext_column 'book', 'title', 'add'execute sp_fulltext_column 'book','notes', 'add'//建立全文索引execute sp_fulltext_table 'book', 'activate'//填充全文索引目录execute sp_fulltext_catalog 'ft_test', 'start_full'至此,全文索引建立完毕。进行全文检索SQL Server 2000提供的全文检索语句主要有CONTAINS和FREETEXT。CONTAINS语句的功能是在表的所有列或指定列中搜索:一个字或短语;一个字或短语的前缀;与一个字相近的另一个字;一个字的派生字;一个重复出现的字。CONTAINS语句的语法格式为:CONTAINS({column | *}),_condition>)其中,column是搜索列,使用“*”时说明对表中所有全文索引列进行搜索。Contains_search_condition 说明CONTAINS语句的搜索内容,其语法格式为:{||||}[{{AND|AND NOT|OR}}] [...n]下面就simple_term和prefix_term参数做简要说明:simple_term是CONTAINS语句所搜索的单字或短语,当搜索的是一个短语时,必须使用双引号作为定界符。其格式为:{'word'|“ phrase”}prefix_term说明CONTAINS语句所搜索的字或短语前缀,其格式为:{“word*” | “phrase*”}例如,下面语句检索Book表的Title列和Notes列中包含“database”或“computer”字符串的图书名称及其注释信息:select title, notesfrom bookwhere contains(tilte, 'database') or contains(notes,'database')or contains(title,'computer') or contains(notes,'computer')FREETEXT语句的功能是在一个表的所有列或指定列中搜索一个自由文本格式的字符串,并返回与该字符串匹配的数据行。所以,FREETEXT语句所执行的功能又称做自由式全文查询。FREETEXT语句的语法格式为:FREETEXT({column | * },'freetext_string')其中,column是被搜索列,使用“*”时说明对表中的所有全文索引列进行搜索。Freetext_string参数指出所搜索的自由文本格式字符串。例如,下面语句使用FREETEXT语句搜索Book表中包含“Successful Life”字符串的数据行:select title, notesfrom bookwhere freetext(*,'Successful Life') 我说下我的表结构吧 数据库名:Articlesou需要建全文索引的其中的一个表名: ArticleArticle表下需建索引的字段:title , classid我在查询分析器中输入以下代码:use Articlesouexecute sp_fulltext_database 'enable'execute sp_fulltext_catalog 'ft_test','create'execute sp_fulltext_table 'Article','create','ft_test','PK_Article' // (这里的PK_Article不知道写的对不?) execute sp_fulltext_column 'Article','title','add'execute sp_fulltext_column 'Article','classid','add'execute sp_fulltext_table 'Article','activate'execute sp_fulltext_catalog 'ft_test','start_full'帮忙看看有没有问题嘛?我在程序中查询的SQL语句是:select top 1000 id,title,classid from Article where contains(title, '测试') or contains(classid,'测试')根本没任何记录输出啊 怎样在sql中删除实例 关于with check option的疑问? 客户端无法下载*.sql文件 从两个表中读取字段,做为数据源 帮忙解释两个问题,谢谢 这句错误信息是什么意思啊? 一条关于更新的语句 SQL server 2000 做单机版如何不安装数据库,并隐藏系统表、视图、存储过程等 SOS,紧急求救啊!!!删除了SQL SERVER事务日志LOG文件,数据库无法打开了,怎么恢复?? 如何在装过SQL Server6.5的机器上成功配置用于连接SQL Server2000的ODBC文件?在线等待,高分相送。 如何将查询结果打印出来 能不能讲解下动态 sql?谢谢
数据库名:Articlesou
需要建全文索引的其中的一个表名: ArticleArticle表下需建索引的字段:title , classid
我在查询分析器中输入以下代码:use Articlesou
execute sp_fulltext_database 'enable'
execute sp_fulltext_catalog 'ft_test','create'
execute sp_fulltext_table 'Article','create','ft_test','PK_Article' // (这里的PK_Article不知道写的对不?) execute sp_fulltext_column 'Article','title','add'execute sp_fulltext_column 'Article','classid','add'
execute sp_fulltext_table 'Article','activate'
execute sp_fulltext_catalog 'ft_test','start_full'
帮忙看看有没有问题嘛?我在程序中查询的SQL语句是:
select top 1000 id,title,classid from Article where contains(title, '测试') or contains(classid,'测试')
根本没任何记录输出啊