![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как найти список всех драйверов ODBC ? [D6, D7, MSSQL, MS Access]
spyrytus © (2007-04-04 19:53:00)Здравствуйте !
Написал программу, все работает, но при переносе на другую машину пишет, что не может найти нужного ODBC драйвера. Добавляешь драйвер вручную - начинает работать. Как мне найти список всех драйверов ODBC установленных в системе.
MsGuns (2007-04-05 08:13:00) [1]Просто пример:
with TADODataSet.Create(nil) do
try
ConnectionString := 'Provider=SQLOLEDB;'+
';Persist Security Info=false'+
';User ID=sa'+
';Data Source='+SQLServer.ServerName+
';Initial Catalog='+DBName;
CommandText := <Текст запроса>
Open;
...
finally
Free;
end;
Имя сервера и БД можно хранить в реестре, ini-файле или еще где просто как строчки
sniknik (2007-04-04 23:54:00) [2]> То есть перейти на ADO ?
а ты еще не перешел? работая с MSSQL + MS Access... других вариантов то считай и нет...
> при настройке компонента TADOConnection требуется ввести строку соеденения
требует значит вводи! ткни на строке в компоненте где мастер открывается и вводи с комфортом...
> как узнать список доступных пользовательских DSN
в OLEDB нет DSN...
spyrytus (2007-04-04 23:37:00) [3]То есть перейти на ADO ?
Понеслось ! И вот теперь новый вопрос но уже по ADO !
Короче говоря: при настройке компонента TADOConnection требуется ввести строку соеденения. Один из параметров строки - "Provider=" - драйвер который будет использоватся ( как узнать список доступных драйверов), второй параметр - "DSN=" - как узнать список доступных пользовательских DSN.
sniknik (2007-04-04 23:29:00) [4]> Добавляешь драйвер вручную - начинает работать.
как это? ты копируешь откудато драйвер себе на машину, или, как подозреваю просто путаешь драйвер и DSN? если да, то можно составлять строку коннекта не указывая DSN, а указывая драйвер, и вручную тогда прописывать не надо будет.
> В MSVC++ есть функция SQLGetInstaledDrivers
она не в MSVC++ есть, она есть в odbc32.dll, откуда ты ее можеш и в программе на дельфи брать и использовать.
но лучше конечно ->
> уйти от ODBC к OLE DB
MsGuns (2007-04-04 22:14:00) [5]Советую уйти от ODBC к OLE DB
spyrytus (2007-04-04 21:14:00) [6]А есть-ли, какая-то функция которая-бы возвращала список, или хотя-бы указатель на первый драйвер ? В MSVC++ есть функция SQLGetInstaledDrivers - она возвращает список драйверов.
Desdechado (2007-04-04 20:19:00) [7]HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI
?