5、 使用新的超小型二進制索引
VFP9引進了一個新的索引類型---二進制索引,它可以在任何邏輯表達式中被使用。據(jù)一些測試者講,這種新型索引的訪問速度和一般索引差不多,但是它的大小比一般索引要小90%,插入記錄時要快80%。
要建二進制索引標志,你要在表設(shè)計器中設(shè)置索引類型為二進制,或者在Index命令中加入關(guān)鍵字BINARY:
INDEX ON MyNonNullableLogicalExpression TAG MyBinary BINARY
INDEX ON DELETED() TAG DELETED BINARY
要注意的是,你建二進制索引或索引TAG的時候,不要 包含F(xiàn)OR子句 或 INDEX ON一個會得出NULL值的表達式。你也不能在SEEK或SET ORDER TO語句中使用二進制索引。不過你可以在優(yōu)化的FILTER條件和SQL SELECT的WHERE子句中使用并得到好處。
為了配合新的二進制索引,VFP9.0在SET DELETED ON環(huán)境中優(yōu)化了DELETED()。因為二進制索引已經(jīng)是“位”級了,VFP可以在內(nèi)存中更快地建立Rushmore,并且使用更少的局域網(wǎng)數(shù)據(jù)流量,從而大大提高了查詢的性能。現(xiàn)在你可以拿幾個變量和別人討論下在索引中使用DELETED()究竟會降低還是提高性能了。