|
|
|
VBA+Excel+DAO-чудесный селект
|
|||
|---|---|---|---|
|
#18+
Имею простой файл с тремя полями. Из другого файла выполняю к нему запрос через ДАО. попытка 1 select [f1],[f2],[f3] from [Лист1$] результат - одна запись отобрана попытка 2 select [f1],[f2],[f3] from [Лист1$] order by [f3] asc все(8) записи отобраны Убивайте, но не пойму в чем прикол.... Код процедуры Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2008, 02:54 |
|
||
|
VBA+Excel+DAO-чудесный селект
|
|||
|---|---|---|---|
|
#18+
вероятно в этом (хотя и не буду утверждать) Код: plaintext 1. 2. св-во rs.RecordCount не вссегда работает нормально чтобы он показывал правильное кол-во записей, надо .... ИМХО для определения наличия записей лучше использовать Код: plaintext I Have Nine Lives You Have One Only THINK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2008, 08:47 |
|
||
|
VBA+Excel+DAO-чудесный селект
|
|||
|---|---|---|---|
|
#18+
big-dukeДля начала перейти на ADO..... выкрасить и выбросить. Какая разница на что он перейдет, если человек не понимает принципа клиент-сервера? avdjУбивайте, но не пойму в чем прикол.... Прикол в том, что в обоих случаях отбираются все восемь записей. Но эти записи лежат в буфере сервера базы данных (или в буфере того что заменяет у тебя сервер базы данных). Потом вступает в дело клиентский драйвер и он по необходимости вытягивает данные из серверного буфера в свой собственный. Когда конкретно происходит выкачивание строк зависит от очень многих факторов (и настроек курсоров и версии драйверов) и в общем случае предсказать это невозможно. А RecordCount отражает только число записей уже физически выкачанных на клиента. Поэтому использовать эту проперть можно только в случае если точно знаешь как ведет себя твой конкретный клиентский драйвер при данных настройках курсора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2008, 00:55 |
|
||
|
VBA+Excel+DAO-чудесный селект
|
|||
|---|---|---|---|
|
#18+
White Owl big-dukeДля начала перейти на ADO..... выкрасить и выбросить. Какая разница на что он перейдет, если человек не понимает принципа клиент-сервера? Понесло Остапа. Спокойно, ни кто не претендует на Вашу гениальность! :) White OwlПотом вступает в дело клиентский драйвер и он по необходимости вытягивает данные из серверного буфера в свой собственный. Смущает разная необходимость в двух аналогичных запросах White Owl А RecordCount отражает только число записей уже физически выкачанных на клиента. Поэтому использовать эту проперть можно только в случае если точно знаешь как ведет себя твой конкретный клиентский драйвер при данных настройках курсора. Конкретно и по теме - спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2008, 20:37 |
|
||
|
VBA+Excel+DAO-чудесный селект
|
|||
|---|---|---|---|
|
#18+
avdjУбивайте, но не пойму в чем прикол Прежде чем брать RecordCount, recordset надо "продернуть": Set rs = db.OpenRecordset(sQuery) If Not rs.EOF Then rs.MoveLast Debug.Print rs.RecordCount rs.MoveFirst End if ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2008, 00:57 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=35394806&tid=2162143]: |
0ms |
get settings: |
12ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
218ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 245ms |
| total: | 557ms |

| 0 / 0 |
