Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.31;
Скачать: CL | DM;

Вниз

Помогите а то я уж запарился!   Найти похожие ветки 

 
Nona   (2002-10-07 21:12) [0]

Работаю с базой данных MS Access и мне приходится ручками указывать путь к моей базе и прочие параметры, но я хочу все автоматизировать но как не знаю, главное чтоб вся автоматизация выполнялась во время выполнение программы?


 
sniknik ©   (2002-10-07 21:51) [1]

в строке коннекта указывай udl файл у него максимальные возможности настройки.


 
nona   (2002-10-07 22:04) [2]

А по подробнее нельза а то я что то е поняла...


 
sniknik ©   (2002-10-07 22:23) [3]

подробнее надо указывать с чем работаеш.

этот метод для ADO. там все для подключения указывается в строке подключения. для примера сдалай любой файл с расширением udl (*.udl) и "запускай его" двойной клик в проводнике или через пуск выполнить. посмотриш как настраивается. если указать такой файл в строке подключения настройку можно произвести в любой момент и не переколпилируя программу.


 
Tornado ©   (2002-10-08 08:14) [4]

var
path, path_odbc:string;

begin

path_odbc := ExtractFilePath(paramstr(0)) + "MS Access 97 Database (not sharable).dsn"; (* ODBC Driver *)

path := ExtractFilePath(paramstr(0)) + "Baza.mdb"; (* Путь к БД *)

DataModul1.ADOConnection1.ConnectionString := "Provider=MSDASQL.1;Mode=Read|Write;Extended Properties="DSN=MS Access 97 Database;DBQ=" + path + ";FILEDSN=" + path_odbc + ";""; (* Подключение к БД *)

end;


 
USTAS   (2002-10-08 08:53) [5]

Если базу ложить в один каталог с экзэшником, то это очень упрощает дело (при условии что работаешь без АДО), можно накатать функцию примерно такого вида

аunction FindDatabase :Boolean;
var DataFile:TSearchRec;
begin
Result := False;
if FindFirst(ExtractFileDir(Application.ExeName) + "\database.mdb",faAnyFile,DataFile) = 0 then
Result := True;
while FindNext(DataFile) = 0 do
Result := True;
FindClose(DataFile);
end;

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

...
if FindDatabase then
begin
...
Database.DatabaseName := ExtractFileDir(Application.ExeName) + "\" + "database.mdb";
DataBase.Connected := True;
...
end;



 
_VaaL_   (2002-10-09 09:49) [6]

Если для АДО и без УДЛ-файла то так:
...
var
Str: WideString;
...
Str:=ADODB.PromptDataSource(0,Form1.ADOConnection1.ConnectionString);
// Эта функция вызывает то-же окно что и двойной щелчок по удл-файлу
//В Str у тебя будет ConnectionString
Form1.ADOConnection1.ConnectionString:=Str;
Form1.ADOConnection1.Connected:=true;
// И пошло поехало...



Страницы: 1 вся ветка

Текущий архив: 2002.10.31;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
1-101301
V.exeR
2002-10-18 22:50
2002.10.31
Почему не дружат TImageList и TTreeView?


7-101541
Sega77
2002-08-27 19:39
2002.10.31
Как отловить момент закрытия popup меню?


4-101589
Klev.J
2002-09-09 19:30
2002.10.31
Hints исключительно на WIN API


3-101078
boogier
2002-10-11 15:10
2002.10.31
Ошибка ADOTable.Close когда количество записей = 0


14-101441
qube
2002-10-08 17:19
2002.10.31
Мастера! Поделитесь воспоминаниями, как кто программистом стал.