Текущий архив: 2004.06.13;
Скачать: CL | DM;
Внизв CBuilder или DElphi (BDE) подсоединиться к БД Access без alias Найти похожие ветки
← →
muk07 (2004-05-15 15:30) [0]Пишу db->DriverName="MSACCESS";
db->Params->Add("DATABASE NAME=c:\mybase.mdb")
db->Open();
безуспешно
← →
sniknik © (2004-05-15 17:28) [1]смотри ADO, изначально без алиасов и избежиш кучи проблем несовместимости BDE с новыми версиями jet (access)
← →
muk07 (2004-05-16 07:55) [2]Я задавал вопрос о BDE. Ваш совет не имеет отношения к вопросу.
← →
sniknik © (2004-05-16 12:45) [3]согласен. если с BDE. просто вот это
> безуспешно
может означать что угодно, например нераспознаваемый формат (читай ошибку) а это может означать что у тебя версия базы уже больше чем то что BDE поддерживает. и ? т.что воспринимай предыдущее как предупреждение, в током аспекте это очень даже имеет отношение.
ну если BDE всетаки жизненно необходим, то хотябы возьми ODBC драйвер, это хотя и через задницу (ODBC в этом случае использует драйвер OLE DB, тот же ADO), но всетаки рабочий во всех случаях вариант. драйвер Microsoft Access Driver (*.mdb) вместо MSACCESS.
← →
muk07 (2004-05-17 08:50) [4]to sniknik
1)Через alias БД открывается, следовательно BDE поддерживает.
2) драйверы я, конечно, менял. Без успеха.
Честно говоря, мне нужно немного другое:
Неграмотный user, которому говорить слова "ODBC" и "alias" нельзя, указав в ini файле программы местонахождение БД, должен начать работу.
Сегодня попробую написать для runtime следующее:
- если ODBC источник с определенным именем на компьютере не существует, создать его.
- воспользоваться им как alias для открытия БД
Но первоначальный вопрос не потерял актуальность. Выходные кончились. Сегодня народу будет побольше. Может кто-то ответит.
Ау-у..
← →
sniknik © (2004-05-17 10:56) [5]> 1)Через alias БД открывается, следовательно BDE поддерживает.
через какой? DSN ODBC? естественно будет открывать, (его и советовал), я про родной из BDE что у тебя используется в вопросе "MSACCESS", вот этот у меня давно уже (года с два-три) выдает "нераспознаваемый формат" (у тебя тоже должен если конечно база не от 97-го офиса).
> - если ODBC источник с определенным именем на компьютере не существует, создать его.
легко (хотя правильнее наверное пользоваться инсталятором проги которая все и настраивает)
fReg:= TRegistry.Create;
fReg.OpenKey("\Software\ODBC\ODBC.INI\DocumentsFab", True);
fReg.WriteString("Database", "Documents");
fReg.WriteString("Description", " ");
fReg.WriteString("Driver", "C:\WINNT\System32\myodbc.dll");
fReg.WriteString("Flag", "1");
fReg.WriteString("Password", "");
fReg.WriteString("Port", " ");
fReg.WriteString("Server", "xmark");
fReg.WriteString("User", "winuser");
fReg.OpenKey("\Software\ODBC\ODBC.INI\ODBC Data Sources", True);
fReg.WriteString("DocumentsFab", "MySQL");
fReg.CloseKey;
fReg.Free;
это правда для MySql, но ты создай нужный руками для Access а после по ключам посмотри значения (дома есть пример и для аксес но ... :)
← →
VLAD-MAL (2004-05-17 15:41) [6]Юзай ADO!
db->ConnectingString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Working\AccessBases\MyBase.mdb;Persist Security Info=False"
← →
muk07 (2004-05-19 12:19) [7]to VLAD_MAL
Вы все таки читайте вопрос, прежде чем отвечать.
Страницы: 1 вся ветка
Текущий архив: 2004.06.13;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.031 c