Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Подключение к MS Access через BDE [D7, MS Access]


npr2 ©   (2004-09-30 04:50:00) 

Помогите,плз!  
Стоит проблема подключения в Delphi к различным файлам Бд MS Access через BDE.
Сейчас определен доступ к конкретной БД через драйвер ODBC (MS Access Driver .mdb) и назначен ODBC DSN= alias, а если назначаю DATABASE NAME=\\\*.mdb, то получаю ошибку "Invalid configuration parameter" при connect. Если использую стандартный драйвер BDE MSACCESS, получаю ошибку "Cannot load an IDAPI service library.", "File: MSJT3032.DLL". Помогите решить проблему подключения к выбранному файлу БД из списка программно без дополнительной настройка BDE.Короче - достеп к разнам БД через один alias. ADO использовать - нет времени на исправления.


npr2   (2004-10-01 08:42:00) [1]

Спасибо! Но к сожалению я нахожусь в Новокузнецке - Западная Сибирь.

Еще раз спасибо. Лена.


sniknik   (2004-10-01 08:28:00) [2]

> Если можно строчку прграммного кода.
только после вас.
считай меня джентельменом. ;о))
тем более ее нет (просто настроил компанент (связку - датабейс-...-грид), на DSN с одной базой, проверил (прям в дизайне) открывается, дальше заменил базу и таблицу на ту которой в первой нет, тоже открывается... все)

> (есть уже заказы на просмотр изображения с видеокамер - принимаю советы)
если находишся в москве можно встретится, покажу противокражную систему совмещающую событийность с видео. (события с касс, ворот, датчиков (двери), ..настраиваемые юзером..) с быстрым доступом к видео/слайдам, поиском, отчетам по событиям, удаленным доступом (на случай наличия инета в избушках ;о)).
хотя она для супермаркетов, тем не менее, чтото с нее взять можно (идею).
идти в офис придется как потенциальному покупателю/заказчику (что не совсем неправда ;о), купить/заказать переделку проще чем с нуля писать).


npr2   (2004-10-01 05:15:00) [3]

Хозяева больших компаний, кому принадлежат избушки считают свои деньги и хотят видеть все, что делается (есть уже заказы на просмотр изображения с видеокамер - принимаю советы). Весовщик должен определиться в какую базу писать(там даже есть сеть в избушках), создавать архивы. В следующих задачах планируется использовать АДО.

>а там параметр DATABASEName не работает.
> работает, специально проверил... хотя BDE для меня... (ну не родной ;). даже догадываюсь(думаю так) что ты мог там напутать, но обьяснять заранее (до того как обьясняют исходные данные и как делают) не имею привычки.
Если можно строчку прграммного кода.

Спасибо Всем.


sniknik   (2004-09-30 14:30:00) [4]

> А чтобы пароль не спрашивало, LoginPrompt:=False для TDataBase, который указывает на алиас BDE(через ОDBC)...
посмотри, так для интереса
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1096454382&n=1

> Ну, тогда, наверное, нужно либо движок поменять вообще
> ... Access через ДАО...
дао устарел. если уж и менять то на ADO, а
> [0] ... ADO использовать - нет времени на исправления.

npr2   (30.09.04 12:29) [9]
если уж нашол библиотеку ODBC то посмотри там параметр
ODBC_ADD_DSN    = 1; // Add data source
как только переведеш, научишся сам алиасы odbc делать.
кстати так и не понял, чем так опушка для белазов влияет на параметр DATABASEName, что он не работает?
мне кажется все гораздо проще, все дело в пресловутой 17й строке.


Виталий Панасенко   (2004-09-30 13:42:00) [5]

Ну, тогда, наверное, нужно либо движок поменять вообще, либо формат хранения.. Кстати, у Тимура Исламова есть компоненты доступак MS Access через ДАО... Может сгодиться.. Только Access 2000 (или ДАО нужной версии) установить нужно...
см. http://www.islamov.com/diamond/


npr2   (2004-09-30 12:29:00) [6]

А алиасы тупой конечный пользователь на все базы сам не создаст.
а ему и не надо, их можеш создать ты (твоя программа).
Эта программа будет работать потом на другом конце России, в избушке на опушке (программа для весов автомобильных "Белазов". > а там параметр DATABASEName не работает. Это я еще посмотрю хорошо.
> Нужно APi использовать.
вот это интересно (в основном что ты под этим понимаеш)
-Функция SQLConfigDataSourse
или в реестре.


Виталий Панасенко   (2004-09-30 11:46:00) [7]

А чтобы пароль не спрашивало, LoginPrompt:=False для TDataBase, который указывает на алиас BDE(через ОDBC)...


sniknik   (2004-09-30 11:25:00) [8]

> Я конечно понимаю, что ты шутник, но не до такой же степени.
именно до такой, знал бы ты как надоели "кроссворды" когда нужно догадываться не о проблеме а о том что имеет ввиду спрашивающий. и что он знает (т.к. обижается на то что ему обьясняют уже известное) и т.д. (тоже попробуй догадайся ;)
ты бы меня понял.

> а там параметр DATABASEName не работает.
работает, специально проверил... хотя BDE для меня... (ну не родной ;). даже догадываюсь(думаю так) что ты мог там напутать, но обьяснять заранее (до того как обьясняют исходные данные и как делают) не имею привычки.

> Нужно APi использовать.
вот это интересно (в основном что ты под этим понимаеш)

> А алиасы тупой конечный пользователь на все базы сам не создаст.
а ему и не надо, их можеш создать ты (твоя программа).


Ega23   (2004-09-30 11:23:00) [9]

Возможно оффтоп, но... что мешает использовать ADO?
1. Боюсь, и с АДО у автора возникнут такие же проблемы
2. Бывают задачи, требующие именно BDE.

По сабжу: TDataBase используй, leonard   (30.09.04 07:53) [1] порочный путь предлагает.


Rem   (2004-09-30 11:09:00) [10]

Возможно оффтоп, но... что мешает использовать ADO?


npr2   (2004-09-30 11:07:00) [11]

Я конечно понимаю, что ты шутник, но не до такой же степени. Здесь дана на самом деле маска, а в жизни все реально ( и путь, и имя файла, который там где ему и надо быть).
Но проблему я решила, там не все так просто, много всяких тонкостей. Т.к. MS Access2000, а стандартные драйвера BDE с ней не работают. Нужно подключать драйвер ODBC, а там параметр DATABASEName не работает. Нужно APi использовать. Сегодня полдня сидела в инете. Кому интересно-пришлю ссылки. А алиасы тупой конечный пользователь на все базы сам не создаст.


sniknik   (2004-09-30 08:40:00) [12]

> а если назначаю DATABASE NAME=\\\*.mdb, то получаю ошибку "Invalid configuration parameter" при connect.
вот в этом и ошибка, неправильно назначаеш. (небывает таких файлов \\\*.mdb, это маска, и судя по попытке (\\) на неподключенный сетевой путь которого многие непонимают)

> Чего я сам не понимаю, это как отключить запрос пароля.
а это потому что ты ответов не читаеш (или не воспринимаеш читая, что гораздо хуже)


ЮЮ   (2004-09-30 08:08:00) [13]

>leonard   (30.09.04 07:53) [1]
а если
WHERE NOT ("поле" IN (SELECT ...)).

>Сейчас определен доступ к конкретной БД через драйвер ODBC (MS Access Driver .mdb) и назначен ODBC DSN= alias

И что мешает создать ещё один ODBC DSN alias к другой конкретной БД?


leonard   (2004-09-30 07:53:00) [14]

Я обычно прописываю базу в ODBC (пользовательская БД) и BDE. На форму кладу только Query. У него есть свойство

Query1.DataBaseName

которое можно забить из списка. Если все правильно сделано, то имя алиаса ODBC в списке будет. Чего я сам не понимаю, это как отключить запрос пароля. Плюс к этому глючит запрос ...WHERE "поле" NOT IN (SELECT ...). Че за ботва, не знаю, просто без NOT работает :(. В остальном нет проблем.


Наверх

Титульная страница Поиск, карта сайта Написать письмо