Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
12.10.2016, 08:41
|
|||
|---|---|---|---|
|
|||
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
Добрый день. Мне нужно выбрать данные из Excel в БД Access. Записей в Excel порядка 60000. В Access 2007 составляю SQL запрос: Код: sql 1. 2. Скорость выполнения этого запроса в Access не более секунды. Ввожу в ADOQuery запрос вида: Код: sql 1. Скорость выполнения данного запроса около 15 секунд пытаюсь выполнить код: Код: plaintext 1. 2. 3. 4. 5. Пишет, что не найден параметр "r" В принципе мне нужно передавать путь к базе через параметр. Может быть у кого-нибудь есть какие-нибудь идеи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.10.2016, 11:53
|
|||
|---|---|---|---|
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
flanderz, В С/C++ слэш нужно экранировать: "d:\\projects\\RAD\\ExcellBase\\11aa.xlsx" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.10.2016, 14:42
|
|||
|---|---|---|---|
|
|||
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
PPAflanderz, В С/C++ слэш нужно экранировать Прошу прощения, не заметил, что не указал в коде экранирование. В программе оно есть. Но почему билдер выдает ошибку "Parametr "r" not found"? Вроде все правильно указано? Почему параметр не найден? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.10.2016, 14:48
|
|||
|---|---|---|---|
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
flanderz, А ты точно создал этот параметр? в коде видно только обращение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.10.2016, 18:47
|
|||
|---|---|---|---|
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
flanderz, Прежде чем обращаться к параметру по имени, надо добавить этот параметр в коллекцию параметров. Это можно сделать либо вручную: https://msdn.microsoft.com/en-us/library/ms681564(v=vs.85).aspx Либо автоматически, на основе уже существующего запроса: https://msdn.microsoft.com/en-us/library/ms675046(v=vs.85).aspx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2016, 09:11
|
|||
|---|---|---|---|
|
|||
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
PPA,White Owl Код: sql 1. Параметр определен в запросе. Разве не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2016, 10:20
|
|||
|---|---|---|---|
|
|||
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
А почему файл базы не вклеивать прямо в строку? я сильно не уверен, что параметры допустимы в клозе FROM. т.е. select * from :r - это неправильно, парсер должен разобрать запрос до выделения параметров, а как он будет разбирать, если не знает к чему запрашивать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2016, 10:51
|
|||
|---|---|---|---|
|
|||
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
Vladimir Baskakov, Если передавать строку "[Excel 12.0 XML; HDR=YES; IMEX=1; DATABASE=DATABASE='d:\\projects\\RAD\\ExcellBase\\11aa.xlsx][Sheet1$]'"][Sheet1$]" в параметр, то пишет, что параметр неправильно определен. Представлены неполные или несогласованные сведения. Мне бы в качестве параметра передать путь и имя к Excel файлу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2016, 11:54
|
|||
|---|---|---|---|
|
|||
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
flanderz, я так и говорю - не надо передавать параметры в секцию FROM. имя базы, таблицы, поля и т.д. - не может быть параметром. не должно. Это нужно вклеивать в тело запроса, а не параметризовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.10.2016, 12:16
|
|||
|---|---|---|---|
|
|||
C++ Builder + ADO + Access + Excel помогите правильно составить запрос на выборку |
|||
|
#18+
Спасибо всем, кто участвовал в обсуждении, особенно помог Vladimir Baskakov. Конечный рабочий результат получился таким: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Остался один вопрос: почему в access данный запрос выполняется за секунду, а в программе секунд 10-15. Сколько раньше не работал с Аксессом, такого не было, выборка происходила достаточно быстро. Правда тогда мне не нужно было делать выборку из Экселя. Может у кого-нибудь есть мысли по этому поводу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&tablet=1&tid=2018411]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 134ms |

| 0 / 0 |
