人们似乎已经失去了使用现代语言生成旧式 COBOL/RPG 报告的能力。
我经常看到使用依赖于记录计数的 DataReaders 的代码。因此,在不需要时会出现一个额外的聚合查询。
在大多数情况下,此代码需要知道是否有另一条记录可用。换句话说,告诉我是否在最后一条记录,以便我可以显示记录分隔符。
一个简单的算法如下:
Dim available As Boolean = rdr.Read()
While available
DisplaySearchRecord(rdr)
available = rdr.Read()
If available Then DisplaySeparator()
End While
当算法的简单更改就足够时,请不要使用 COUNT(*) 或数据表/数据集。