Страница: 1 |
Страница: 1 |
Вопрос: Срочно нужна помощь, проет в ACCESS!!!!
Добавлено: 04.04.07 00:34
Автор вопроса: андрей
Всем привет!
Не могли-бы вы помочь мне со следующей бедой (не знаю, насколько правильно спрашивать это в данном форуме): при открытии файла проекта .mdb запускается формочка с разными кнопками, полями и т.д и т.п. В общем, стандартная ситуация. Единственно, что просто выводит из себя, и что я не могу понять - это первый запуск любого запроса (нажатием кнопки например) - все работает просто чертовски долго, даже приметивный запрос. При этом далее все работает достаточно быстро, на что было убито много врмени и сил. Может есть какая-нибудь возможно "инициализации" в Access, или он там первый раз таблицы читает долго. Что-то точно должно быть, возможно и задаваемое програмно с помощью VBA (например, запуск чего-нибудь при открытие проекта и т.д и т.п). Жду любые предложения. Спасибо.
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #1
Добавлено: 04.04.07 09:30
Ну Accsess, как и многие другие БД кешируют запросы, индексы таблиц итп итд... так что вполне логично что следующие запросы должны выполнятся быстрее. Покажи свой запрос который долго выполняется, и расскажи про структуру твой таблицы
Номер ответа: 2
Автор ответа:
андрей
Вопросов: 6
Ответов: 9
Профиль | | #2
Добавлено: 04.04.07 10:06
Запросов естественно много, поэтому приводить какой-то конкретный не имеет смысла. В любом случаи структуру старались делать логически верной с правильной индексацией БД. Запросы тоже писались не через одно место.
Касательно кешируемости - именно это и интересует,т.е можно-ли при запуске данного проекта совершить данную процедуру, чтобы потом все работало отлично. Неужели никто не замечал, что при первом запуске запроса, например, на объединение (join) с условиями (on,where), Access начитывает все достаточно долго?!
Номер ответа: 3
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #3
Добавлено: 05.04.07 19:47
хм... ну дык, при запуске проги и сделай запрос который выполняется долго, только сделай его lite версию, типа вытащи не все данные, а только индексы по твоему условию итп..
select id from table where....