发现一个Bug,sql语句的
例如:
cmd.CommandText = "S00ELECT * FROM {Trans} where InventoryGLCode=‘12345’ order by Date asc, [_identify] asc"
Dim DB As DataTable= cmd.ExeddddcuteReader(True)
此时得到的DB,如果用 For each datarow 语句逐行输出date和_identify的值,会发现输出的顺序永远事按_identify asc 排列的,Date列没有发挥作用。
但是当把这个DB绑定到Table进行显示的时候,table显示row的顺序却是正确的(即Date asc, [_identify] asc)。
只有DB内部datarow的顺序是错误的。
平时用着也许看不出问题。但是当计算总账流水的时候,只生成DB但却并不会输出到table显示,而且为了节省传输的时间空间,并不会读取所有的sql语句排序列,此时逐行循环的时候就会导致每行的余额计算都是错误的。
[此贴子已经被作者于2021/9/23 9:19:03编辑过]