Exchange全文检索概述
来源:互联网
作者:west263.com
时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
return xmldoc;
}
传入参数分别为,需要查询的根路径(能够认为是表名,这里为HTTP URL)和查询语句(格式见上一节),返回的结果为包含查询结果的XMLDocument实例。
}
传入参数分别为,需要查询的根路径(能够认为是表名,这里为HTTP URL)和查询语句(格式见上一节),返回的结果为包含查询结果的XMLDocument实例。
3-3-2、ADO。
Exchange提供了两种Provider,ExOLEDB和MSDAIPP,可供ADO调用,但是只有MSDAIPP这个Provider支持全文检索,而且当在Exchange安装的主机上采用MSDAIPP进行全文检索时,会产生一些不可知的错误,比如挂起之类,所以建议采用WebDAV。
ADO的示例如下:
private ADODB.RecordsetClass GetQueryResult(System.String sUrl,System.String sQuery) bitsCN.nET中国网管博客
{
ADODB.RecordsetClass rsResult = null;
ADODB.ConnectionClass cnnExchange = null;
ADODB.CommandClass cmdQuery = null;
System.Object objAffectedRecords = null,objParams = null;
{
ADODB.RecordsetClass rsResult = null;
ADODB.ConnectionClass cnnExchange = null;
ADODB.CommandClass cmdQuery = null;
System.Object objAffectedRecords = null,objParams = null;
if (sUrl == null || sUrl == String.Empty)
return null;
if (sQuery == null || sQuery == String.Empty)
return null;
return null;
if (sQuery == null || sQuery == String.Empty)
return null;
try
{
cnnExchange = new ConnectionClass();
if (cnnExchange == null)
return null;
cnnExchange.Provider = "provider=msdaipp.dso";
cnnExchange.Open(sUrl,String.Empty,String.Empty,0);
}
catch (System.Exception e)
{
Trace.WriteLine("GetQueryResult: Create connection failed! " e.Message);
cnnExchange = null;
return null;
}
{
cnnExchange = new ConnectionClass();
if (cnnExchange == null)
return null;
cnnExchange.Provider = "provider=msdaipp.dso";
cnnExchange.Open(sUrl,String.Empty,String.Empty,0);
}
bitsCN.nET中国网管博客
catch (System.Exception e)
{
Trace.WriteLine("GetQueryResult: Create connection failed! " e.Message);
cnnExchange = null;
return null;
}
cmdQuery = new CommandClass();
if (cmdQuery != null)
{
cmdQuery.ActiveConnection = cnnExchange;
cmdQuery.CommandType = CommandTypeEnum.adCmdText;
cmdQuery.CommandText = sQuery;
try
{
rsResult = (ADODB.RecordsetClass) cmdQuery.Execute(out objAffectedRecords,ref objParams,0);
}
catch (System.Exception e)
{
Trace.WriteLine("GetQueryResult: Query data failed! " e.Message);
}
cmdQuery = null;
}
cnnExchange = null;
if (cmdQuery != null)
{
cmdQuery.ActiveConnection = cnnExchange;
cmdQuery.CommandType = CommandTypeEnum.adCmdText;
cmdQuery.CommandText = sQuery;
try
{
rsResult = (ADODB.RecordsetClass) cmdQuery.Execute(out objAffectedRecords,ref objParams,0);
}
catch (System.Exception e)
{
Trace.WriteLine("GetQueryResult: Query data failed! " e.Message);
DL.bitsCN.com网管软件下载
}
cmdQuery = null;
}
cnnExchange = null;
return rsResult;
}
传入参数分别为,需要查询的根路径(能够认为是表名)和查询语句,返回的结果为包含查询结果的Recordset实例。需要强调的是MSADIPP的Provider不支持在打开连接时指定访问用户名和口令。
}
传入参数分别为,需要查询的根路径(能够认为是表名)和查询语句,返回的结果为包含查询结果的Recordset实例。需要强调的是MSADIPP的Provider不支持在打开连接时指定访问用户名和口令。
以上就是在Exchange下全文检索的简要介绍。有关IFilter和存储引擎研发的要点,等有机会再进一步阐述。
参考文档
A、SQL Server体系结构(Full-Text Support)(http://msdn.microsoft.com/library/en-us/architec/8_ar_sa2_0ehx.asp)
B、Using Custom Filter With Index Service(http://msdn.microsoft.com/library/en-us/indexsrv/html/ixufilt_912d.asp)
C、Exchagne Store SQL(http://msdn.microsoft.com/library/en-us/wss/wss/_exch2k_sql_web_storage_system_sql.asp)
,
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!



