|
Подскажите, что эффективнее: IN(1000 разных ИД) или временная таблица?
|
|||
---|---|---|---|
#18+
Из Excel оранизован коннекшн к базе mdb, лежащей в сети. В эксель пользователи выгружиют (из головы, астрала, из сканера штрих-кода и еще неизвестно откуда...) список ID. По совпавшим ИД из базы Access в Excel подтягиваются данные. Итак вопрос: что наваш взгляд лучше, выполнить запрос к базе в виде Код: vbnet 1.
или для каждого пользователя создавать табицу со списком ИД, и потом ее дропать и делать пак БД, ожидая когда же она сломается. SQL-сервера нет и не предвидится. Пытался сделать временную БД на на стороне пользователя, но из-за непонятного поведения запроса не прокатило. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2015, 12:20 |
|
Подскажите, что эффективнее: IN(1000 разных ИД) или временная таблица?
|
|||
---|---|---|---|
#18+
C учётом того, что один хрен все данные тащатся на клиента для обработки, временная таблица не имеет смысла от слова "вааще". ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2015, 12:39 |
|
Подскажите, что эффективнее: IN(1000 разных ИД) или временная таблица?
|
|||
---|---|---|---|
#18+
Ну, я несколько упростил, пока формулировал описание происходящего. Прежде чем БД отдает резултаты пользователю в ексель, на ее стороне производится куча обсчета, промежуточные и конечные результаты сохраняются в базе, конечные возвращаются в эксель. Akina, а правильно я понимаю, что внутри Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2015, 12:44 |
|
Подскажите, что эффективнее: IN(1000 разных ИД) или временная таблица?
|
|||
---|---|---|---|
#18+
Lockpickupна ее стороне производится куча обсчета Это кто тебе такую хню напел? забудь срочно. Все данные тащатся на клиента и там обсчитываются. И, кроме того, валяющийся хрен знает где файл базы данных используется как файловый кэш, если возникает потребность материализации промежуточных результатов, что генерит дополнительный туды-сюдышный трафик, от которого даже кэширование не очень спасает, ибо сеть. Lockpickupправильно я понимаю, что внутри Код: plaintext
Тыкни пальцем в ссылку - откуда ты взял число 1000, чтобы правильно понимать? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2015, 12:53 |
|
Подскажите, что эффективнее: IN(1000 разных ИД) или временная таблица?
|
|||
---|---|---|---|
#18+
По аналогии с ораклом. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2015, 13:05 |
|
Подскажите, что эффективнее: IN(1000 разных ИД) или временная таблица?
|
|||
---|---|---|---|
#18+
Объясните подробнее - в Excel подключена таблица Акса, из которой по введенным юзером ИД подтягиваются данные. Вопрос - куда юзер вводит данные? В другой диапазон, на другой лист, в другой файл или прямо в ячейки этой таблицы? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2015, 12:29 |
|
Подскажите, что эффективнее: IN(1000 разных ИД) или временная таблица?
|
|||
---|---|---|---|
#18+
Анатолий ( Киев ), вот общая конва: В ячейках Excel указаны ID -они там уже есть по определению. Пользователь жмет кнопку, в базу Acess (mdb) идет запрос по списку ID, указанных на листе, из базы Acess (mdb) нужно подтянуть данные этим ID. По итерациям так: Скрипт (он в файле Excel) подключается к базе Acess посредством ADODB.Connection Проверяем есть ли конкретный ИД в базе. Если нет, взять ИД в базу, взять дополнительные данные, привязанные к ИД из Excel, провести обсчет данных в базе и вернуть результат в Excel. Сейчас все запросы из скрипта Excel к базе работают. Вопрос в том, как правильнее (экономнее, разумнее) передать список ИД в базу, для дальнейшего их обсчета. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2015, 16:26 |
|
|
start [/forum/topic.php?fid=45&msg=39139971&tid=1614102]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 147ms |
0 / 0 |