|
|
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
У меня есть "довольно большая" таблица, в которой - два индекса (И1 и И2 - по полям П1 и П2)... Мне нужно "попеременно" искать в этой таблице - то по одному, то по другому индексу ... Какое решение более эффективно: 1. постоянно "переключать" индексы:.Index = "И1" ... .Index = "И2" и обратно ... или 2. открыть два рекордсета, чтобы иметь в каждом из них ПОСТОЯННО "активированым" один и тот же индекс? Зависит ли ответ от того - буду ли я добавлять НОВЫЕ записи в эту таблицу в процессе работы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:13:55 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Делаеш два запроса: в одном ищеш по одному индексу, а в друглм - по другому; и попеременно их используеш ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:19:06 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
мое скромное мнение, что в подобном случае наиболее эффективным по соотношению память\время\удобство кодирования будет Dlookup (с выражением лица) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:24:23 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Только не надо говорить, что мой вариант медленнее Dlookup :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:25:49 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Vsevolod VДелаеш два запроса: в одном ищеш по одному индексу, а в друглм - по другому; и попеременно их используеш - сорри, я правильно понимаю, что формулировки: "делаешь два запроса" и "открываешь два рекордсета" - эквивалентны? Просто ... я не очень понимаю, что означают слова "искать в запросе по индексу" ... Я-то собирался "искать" методом .Seek ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:33:00 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Иван FXS Vsevolod VДелаеш два запроса: в одном ищеш по одному индексу, а в друглм - по другому; и попеременно их используеш - сорри, я правильно понимаю, что формулировки: "делаешь два запроса" и "открываешь два рекордсета" - эквивалентны? F1 RecordSet F1 Query авторПросто ... я не очень понимаю, что означают слова "искать в запросе по индексу" ... Я-то собирался "искать" методом .Seek Все зависит от того ЧТО и ДЛЯ ЧЕГО ты ищеш Лично я Seek никогда не использовал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:39:58 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Если уж пользоваться SEEK'ом, то достаточно иметь один Recordset, а индексы переключать (.index="i1"/.index="i2"). По крайней мере я всегда пользуюсь одним рекордсетом. Хотя, инструкция без явного указания индекса тоже будет работать быстро set rst=dbs.openrecordset("select * from t1 where p1='valP1'") set rst=dbs.openrecordset("select * from t1 where p2='valP2'") Поскольку оптимизатор распознает, какой индекс использовать для того или иного случая (т.е. для первого варианта автоматически будет использован индекс "i1", а для второго - "i2") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:44:27 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
авторМне нужно "попеременно" искать в этой таблице - то по одному, то по другому индексу ... + авторя не очень понимаю, что означают слова "искать в запросе по индексу" Забавно ___ Ты лучше скажи ЧТО тебе нужно найти и ЗАЧЕМ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:46:07 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Похоже тут уже я чего-то не понимаю А о каких индексах вообще идет речь??? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:48:40 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
SRGЕсли уж пользоваться SEEK'ом, то достаточно иметь один Recordset, а индексы переключать (.index="i1"/.index="i2"). - то есть, получается, при "загрузке" таблицы ... при создании на основе таблицы объекта Recordset ... все индексы этой таблицы СРАЗУ "загружаются"? И никаких "ресурсоемких" операций при "переключении индексов" не производится?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:57:24 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Vsevolod VА о каких индексах вообще идет речь??? :) - об индексах MS Access в таблицах MS Access, ок? Если уж совсем конкретно - об индексах БЕЗ ПОВТОРЕНИЙ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 12:59:38 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Иван FXS Vsevolod VА о каких индексах вообще идет речь??? :) - об индексах MS Access в таблицах MS Access, ок? Если уж совсем конкретно - об индексах БЕЗ ПОВТОРЕНИЙ. Ок. Дык в чем проблема то???????????????????????????????? При чем тут нах рекордсеты????? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 13:04:38 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
В бане нет самолетов! :-( Я обсуждаю работу с ЗАПИСЯМИ таблиц из VBA ... Вы умеете это делать "без рекордсетов"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 13:09:18 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
2 Vsevolod Гм. Проблема описанa более чем хорошо. Чего шумишь? Тем более не по вопросу? 2 Иван FXS А ты бы сам попробовал да померял по скорости, например. И не забудь, если добавлять/удалять записи, рекордсету (или обоим) надо делать requery, если изменять - refresh. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 13:10:05 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Geo Гм. Проблема описанa более чем хорошо. Чего шумишь? Тем более не по вопросу? Проблема действительно описана хорошо, только не написано, что искать нужно в VBA :) Вот и сбили меня с толку. --- В таком случае я высказываюсь за второй вариант - открыть два рекордсета и не париться. Не доверяю я всяким "переключаниям" и пр. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 13:15:37 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
GeoА ты бы сам попробовал да померял по скорости, например. - хмммм ... я могу, конечно, все, что мне нужно, "сам попробовать да померять" ... только ... форум - тогда - зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 13:20:33 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Иван FXS GeoА ты бы сам попробовал да померял по скорости, например. - хмммм ... я могу, конечно, все, что мне нужно, "сам попробовать да померять" ... только ... форум - тогда - зачем? А форум нужен на тот случай, если ты не можеш "сам попробовать да померять" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 13:23:34 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Иван FXS GeoА ты бы сам попробовал да померял по скорости, например. - хмммм ... я могу, конечно, все, что мне нужно, "сам попробовать да померять" ... только ... форум - тогда - зачем? :) Я ответа не знаю. Если ты померяешь, я его тоже буду знать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 13:25:56 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Geo:) Я ответа не знаю. Если ты померяешь, я его тоже буду знать - да? И как же это Вы его узнаете, если я с этим вопросам на форум вылезу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 13:29:04 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
Надеясь на твою сознательность, я думаю, что ты поделишься здесь полученными сведениями ;)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 13:45:29 |
|
||
|
Q: "переключение" индексов vs два рекордсета?
|
|||
|---|---|---|---|
|
#18+
может зависеть от сопутствующих обстоятельств (свободной памяти и т.п.) Но у меня получалось, что переключаться медленнее (можешь поискать в форуме вопрос по генеалогии). Там есть в т.ч. и такие разновидности (внутри более крупного вопроса). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 16:06:38 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32668800&tid=1672162]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
113ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 451ms |

| 0 / 0 |
