Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Бекап базы


Автор: SnowSin 17.12.2010, 15:30
У меня идет бэкап базы

Код

var
I:string;
begin


if saveDialog1.Execute then
I:=saveDialog1.FileName + ' ' + DateToStr(Date) + '.mdb';

CopyFile('D:\db1.mdb', pchar(I), true);


Тока тут копируется база на которую путь введен руками (  'D:\db1.mdb' )  а как сделать что бы копировал именно ту базу которую я щас использую?

Автор: SPrograMMer 17.12.2010, 16:42
Посмотреть ConnectionString используемой БД smile 

Автор: SnowSin 17.12.2010, 16:48
как из ConnectionString  программно достать путь откуда берется база?

Автор: SnowSin 17.12.2010, 17:26
Разобрался сам

Код

var
e,k:integer;
s:string;
begin
k:=pos('urce=',datamodule2.ADOConnection1.ConnectionString)+5;
s:=copy(datamodule2.ADOConnection1.ConnectionString,k,
   length(datamodule2.ADOConnection1.ConnectionString)-k);
s:=copy(s,1,pos(';',s)-1);
label4.caption:=s;


в лейб выведится путь к базе

Автор: Данкинг 21.12.2010, 02:41
Цитата(SnowSin @  17.12.2010,  17:26 Найти цитируемый пост)
Разобрался сам

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

Автор: Deniz 21.12.2010, 06:41
Цитата(Данкинг @  21.12.2010,  04:41 Найти цитируемый пост)
Интересно, а когда ты к базе подключаешься - ты не знаешь, к какой именно?
а если подключение через udl-файл?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)