如何用ASP建立Index Server查询对象并为其参数赋值?
时间:2010-06-11 19:59:00
如何用ASP建立Index Server查询对象并为其参数赋值?
我们有两个方法可以做到这一点。一个方法是利用Index Server query object和参数:
<%
Set Q= Sever.CreatObject("ixsso.Query")
' 创建查询对象
Set Util= Sever.CreatObject("ixsso.Util")
Q.Query= Request("SearchString")
' 查询字段
Q.SortBy="rank[d] "
' 按照符合程度降序排列
Q.Columns="DocTitle,vpath,filename,size,write,characterization,rank"
' 返回记录属性
Q.MaxRecords=300
' 最多返回记录数
Util.AddScopeToQuery Q, "/","DEEP"
' 搜索所有子目录
Q.LocaleID=Util.ISOToLocaleID(“ZH-CN”)
' 指定所用语言为简体中文
Set RS = Q.CreateRecordSet("nonsequential")
' 创建输出集
%>
另一个方法就是.利用ADO query object和SQL语句:
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.ConnectionString = "provider=msidxs;"
Conn.Open
Set AdoCommand = Server.CreateObject("ADODB.Command")
Set AdoCommand.ActiveConnection = Conn
AdoCommand.CommandText = "Select DocTitle,vpath,filename,size,write, "&"characterization,rank FROM SCOPE() WHERE CONTAINS (` "&SearchString &"`) ORDER BY rank DESC"
Set RS = Server.CreateObject("ADODB.RecordSet")
RS.open AdoCommand
%>
可以看出,通过以上方法,我们还可以在表单中加入输入相应限定条件的域,就可以轻松创建对包括文件大小、作者等属性的复杂条件的查询了。