|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Прочие БД - Запрос к аксессовской БД |
|
Прочие БД - Запрос к аксессовской БД
|
Пользователь Сообщения: 90 |
Профиль | Отправить PM | Цитировать
Поставили прикладное ПО которое работает с MDB базой. Мне доводилось общаться только с SQL БД. А тут надо срочно написать запрос к аксессовской базе, который выводит в файл (лучше rtf или xls, но можно и txt ) результаты выборки из таблицы. И главное видимо понять из чего его пользователям выполнять. То есть обычный пользователь должен ввести диапазон значений и парой кликов мышкой получить у себя файл с данными. Запустить Access и там формировать вручную отчёт будет сложно. Поэтому для меня не менее важен вопрос из чего такой запрос удобно выполнять.
Сам запрос несложный. Есть таблица tab1 в ней поля – KeysID (счётчик), Name1, Name2, Name3 …… Name10. Надо, перебирая строки для KeysID с (например) 10 по 30, вывести для каждой Name1, Name2, Name10 в следующем виде: Наименование: «KeysID» (10) Имя1: «Name1» Имя2: «Name2» Имя10: «Name10» Наименование: «KeysID» (11) Имя1: «Name1» Имя2: «Name2» Имя10: «Name10» ….. Диапазон для KeysID пользователь будет каждый раз задавать вручную. |
|
Отправлено: 02:12, 18-04-2010 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Цитата toro:
|
|
------- Отправлено: 02:24, 19-04-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 90
|
Профиль | Отправить PM | Цитировать Вместе с Access по моему ставится какая-то урезанная версия sql. Только в утановленных программах она не видна.
Честно говоря, всё равно видимо придётся пользователю выполнять скрипт в QA или EM. Так как автоматический запрос не подходит. В программе могут работать и постоянно и один раз в неделю. Просто как только поработал в программе необходимо делать выгрузку из БД в файл. При этом пользователь должен вручную задать диапазон строк (значений) для выгрузки. А в VBA это можно сваять? Правда никогда не пользовал его. |
------- Отправлено: 16:51, 19-04-2010 | #3 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Делается форма, на которой будет 2 текстовых поля. Сохраняется форма под любым именем, например, Form1. Далее создается запрос, который будет иметь все поля из таблицы для выводаю В условиях KeysID в конструкторе ставим:
Between [Forms]![Form1]![Поле0] and [Forms]![Form1]![Поле2] Сохраняем запрос. Далее создаем на форме кнопку, ставим условие - выполнить программу. В открывшемся окне пишем ровно три строки: DoCmd.OpenQuery "Query1", acViewNormal, acReadOnly DoCmd.RunCommand acCmdOutputToExcel Application.Quit Вторая - выгружает в Excel Третья - Закрывает Access По поводу выгрузки в Excel можно почитать по ссылкам ниже: http://www.vbforums.com/showthread.php?t=376693 http://www.bigresource.com/MS_ACCESS...-K55g3551.html http://www.access-programmers.co.uk/...ad.php?t=99512 Можно сделать выгрузку в TXT файл, с разделителями - запятой. |
------- Отправлено: 01:35, 20-04-2010 | #4 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Во вложении пример.
|
|
------- Отправлено: 01:44, 20-04-2010 | #5 |
Пользователь Сообщения: 90
|
Профиль | Отправить PM | Цитировать Delirium, спасибо. Пробую.
|
------- Отправлено: 16:09, 21-04-2010 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Запрос к AD | Tele2 | Microsoft Windows NT/2000/2003 | 7 | 10-02-2010 01:40 | |
Прочие БД - Запрос с параметром. | st031 | Программирование и базы данных | 1 | 05-06-2009 17:08 | |
Debian/Ubuntu - Запрос команды | OruoN | Общий по Linux | 7 | 21-10-2008 19:13 | |
запрос в AD | Sidelong | Microsoft Windows NT/2000/2003 | 1 | 05-02-2007 08:21 | |
Сетевой запрос | Insyzor | Microsoft Windows NT/2000/2003 | 1 | 12-04-2006 15:52 |
|