求讨论下数据窗口object.字段名 跟getitem的区别跟联系
在网上也看了下资料,关于用哪个快?最规范?还是object仅仅是为了保留之前的兼容性才一直没有废弃。。
[解决办法]
getitem系列方法更快。
[解决办法]
getitem是制定了数据类型的取值,当然比没有指定取值类型的object.字段名来得快
[解决办法]
object.data 和getitem差不多,是最快的
[解决办法]
测试过了,20万行的记录,用for循环来读取数据
for i = 1 to dw_1.rowcount()
ls = dw_1.getitemstring(1, 'a')
next
历时:1485毫秒
for i = 1 to dw_1.rowcount()
ls = dw_1.object.a[i]
next
历时:4313毫秒
差距明显,其实不用测试也可以得出结论
object.获得的数据类型是any,再赋值给具体的类型,还得经过类型转换这一步,时间绝对要长一些,当然这一步转换时间差不是特别大
效率差距还是在于从数据窗口中获取数据
[解决办法]
但用数据组读一例数据,object.字段 比getitem一个个读快了很多。
[解决办法]
嘿嘿,很有意义的讨论!
应该是getitemxxx()快些吧。不过本人比较懒,平常都是用object.xxx,打代码时快些。惭愧。
To yyoinge:
ls = dw_1.getitemstring(1, 'a'),其中的1是笔误吧?如果是测试的代码,得改成ls = dw_1.getitemstring(i, 'a')再测试下,结果才更实在。
[解决办法]