> The 10,000-record "limit" is by no means absolute, and can be greatly > exceeded depending on how your data is stored. >
> The trick is to put tables in simple tab-delimited text in a variable > rather than in fields on cards. The latter is where bulk and performance > issues come from: the engine needs to make a text record > structure for each > field on every card along with a card record structure in addition to the > data itself. Plus, accessing data in a field is almost always much slower > than grabbing an item from a line in a block of text. Hey Richard I'm wondering if you have tested multi-dimensional arrays (stored as customproperty sets)? I think the direct access nature would kill tab-delimited text. What abut using something like: primaryKey,columnName as the array key? I think it could be very fast and handle much more data. In addition there is no risk from the delimiters. The only issue I can see is the keys would return a very long list but this could be parsed quickly using filter etc. Test setup script: on mouseUp repeat with x=1 to 10000 repeat with y=1 to 50 put random(100) & tab after tData end repeat put cr into char -1 of tData end repeat set the cTest of this stack to tData repeat with x=1 to 10000 repeat with y=1 to 50 put random(100) into tDataA[x,y] end repeat end repeat set the customProperties["cTest"] of this stack to tDataA end mouseUp Test script: on mouseUp put the long seconds into tSeconds set the itemDel to tab put the cTest of this stack into tTest repeat with x=0 to 10000 step 100 put item 25 of line x of tTest into tData end repeat put the long seconds - tSeconds into tTest1 put the long seconds into tSeconds repeat with x=0 to 10000 step 100 put the cTest[x,25] of this stack into tData end repeat put the long seconds - tSeconds into tTest2 put tTest1,tTest2 end mouseUp Result 0.219,0.002 Food for thought ;-) Regards Monte _______________________________________________ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution