[AX]AX2012开发新特性-全文索引

全文索引在索引中识别字符串字段中使用空格隔开的单词,不像普通索引仅仅使用字符串的第一个单词,这样能加快对字符串字段的搜索。AX2012支持每个表有一个且只能有一个全文索引,索引可以包含多个字段,对字段字符串长度没有限制,可以是设定的长度也可以使用memo类型,这是AX2009不支持的功能。

创建全文索引很简单,在AOT表结构可以看到一个Full Text Index的目录,点击新建一个全文索引,把需要索引的字段拖入就可以了,唯一的要求就是表组TableGroup必须是Main。

遗憾的是X++的select语句不能使用全文索引,全文索引只能用在Query中,可以设置QueryRange的RangeType为QueryRangeType::FullText表示使用全文索引,QueryRange值中的各个空格分隔的单词被解析为OR的关系,比如:

query2 = new Query();
queryBDSource3 = query2.addDataSource(tableNum(FtiTable));
queryBRange4 = queryBDSource3.addRange(fieldNum(FtiTable, Field1));

queryBRange4.rangeType(QueryRangeType::FullText);

// The space character is treated as a Boolean OR.
queryBRange4.value("diamond unfounded");

这里就是在FtiTable的Field1字段搜索diamond和unfounded两个单词,任何一个找到都可以,但是不能使用*或者?这样的通配符的。

更多内容参看MSDN:http://msdn.microsoft.com/en-us/library/gg839860.aspx

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值