Если вы просто вызываете rs.Fields("rowId")
, вы фактически запрашиваете значение столбца текущей строки, которое, вероятно, будет первой строкой. Предположим, набор записей возвращает 10 строк. Что вы хотите сделать со значением rowId для каждой из строк? Показать их каждого в окне сообщения? Это означает, 10 сообщений. Если это действительно то, что вы хотели сделать, вы бы сделали что-то вроде:
rs.Filter = "datapath='" + dpath + "' and analystname='" + aname + "' and reportname='" + rname + "' and batchstate='" + bstate + "'"
Do Until rs.EOF
MsgBox rs.Fields("rowid").Value
rs.MoveNext
Loop
Предполагается, что rs
- это набор записей только для пересылки. Если вы используете курсор набора клавиш, вам, вероятно, придется вызвать MoveFirst ().
rs.Filter = "datapath='" + dpath + "' and analystname='" + aname + "' and reportname='" + rname + "' and batchstate='" + bstate + "'"
rs.MoveFirst()
Do Until rs.EOF
MsgBox rs.Fields("rowid").Value
rs.MoveNext
Loop