Запрос SELECT TOP (NN) * FROM ... - VB

Узнай цену своей работы

Формулировка задачи:

Добрый день.
Среда разработки: VB6, SP6. База - *.mdf ACCESS 2000. DAO 3.60.
Итак, имеется некая база, имеем коннект и запрос.
sSQL = "SELECT TOP 72 * FROM BR_1 ORDER BY BAR_ID"
Set db = dao.OpenDatabase(DBPath)
Set rs = db.OpenRecordset(sSQL)
recCount = rs.RecordCount
recCount равен 1 после этого запроса.
Однако же, при следующем запросе
sSQL = "SELECT * FROM BR_1 ORDER BY BAR_ID"
Set db = dao.OpenDatabase(DBPath)
Set rs = db.OpenRecordset(sSQL)
recCount = rs.RecordCount
recCount равен кол-ву записей, более 20 000, что соответствует действительности.
Кто-нибудь посоветует, как вылечить этот баг?
Вариант со сдвигом MoveLast и последовательной переборкой MovePrevious уж очень не хотелось бы применять.

Решение задачи: «Запрос SELECT TOP (NN) * FROM ...»

textual
Листинг программы
Set db = dao.OpenDatabase(DBPath)
 Set rs = db.OpenRecordset(sSQL)
rs.Movelast
rs.MoveFirst
 recCount = rs.RecordCount

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5
Похожие ответы