yedekleme ile ilgili IBBackupService ve backupfile component

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

yedekleme ile ilgili IBBackupService ve backupfile component

Mesaj gönderen huseyinert »

merhaba arkadaşlar

forurumu iyi inceledim ve yedekleme konusunda çok faydalı kodlar buldum
şu kodu kullanmak istiyorum fakat IBBackupService1 servis nesnesi yok bende nasıl kullanacağım ve bide bu kodun içine proggresbar koymak istiyorum.....

Kod: Tümünü seç

var
 gun, ay, yil : Word;
 gun_ay_yil : string;
begin
  DecodeDate(Date, yil, ay, gun);
  gun_ay_yil := IntToStr(gun) + '_' + IntToStr(ay) + '_' + IntToStr(yil);
  Memo1.Lines.Clear;
//  fmSqlMonitor.btClearClick(nil);
  with IBBackupService1 do begin
    Active := True;
    Screen.Cursor := crHourGlass;
    try
     // CloseAllTables;
      DatabaseName := DM.IBDatabase1.DatabaseName;
      BackupFile.Clear;
      BackupFile.Add(ExtractFilePath(Application.ExeName) + '\Yedek\petrol_' + gun_ay_yil +'.gbk');
      ServiceStart;
      While not Eof do
        Memo1.Lines.Add(GetNextLine);
      MessageDlg('Yedekleme başarıyla tamamlandı!', mtInformation, [mbOK], 0);
    finally
      Active := False;
   //   OpenAllTables;
      Screen.Cursor := crDefault;
    end;
  end;
birde arkadaşar yeedekleme işlemi bittikten sonra yedeği geri almak istiyorum, ve her yedek alındığında dosyayı ayrı olarak kaydetmesi istenilen tarihteki yedeğin geri alınmasını sağlamak istiyorum

teşekkürler......[/code]
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

arkadaşlar bide BackupFile nesnesi
yani BackupFile ile ibbackupservice nesnesini delphide bulamıyorum
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

Yedekleme için;

Kod: Tümünü seç

TIBBackupService
Geri yükleme için;

Kod: Tümünü seç

TIBRestoreService
kullanıyorsun. bu iki komponent te aksini belirtmedikçe Interbase Admin Paletinde bulunur.
DeveloperToolKit

..::|YeşilMavi|::..
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

restore service nasıl kullanacağım
acaba
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

Kod: Tümünü seç

with IBRestoreService1 do
begin
  Active := True;
  DatabaseName.Clear;
  BackupFile.Clear;
  DatabaseName.Add('DENEDB.FDB');
  BackupFile.Add('yedekfile.ydk');
  ServiceStart;
  Active := False;
end;
DeveloperToolKit

..::|YeşilMavi|::..
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

cevabın için teşekkür ederim, yedeklemeyi yaptırdım, geri alma da tamam, ama şöle bişey var; diyalog kutusundan dosyayı seçip geri yükleme yapabilmesine olanak vermek istiyorum, şuanda geri yükleyince aynı isimde varsa hata veriyor, ama database im aynı isimde olmalı, şöyle anlatayım;benim veri tanım ATM.gdb, yedek alırken atm_6_5_2005.gbk şeklinde aldırıyorum, geri alırken de hangisi seçilirse onu ATM.GDB ismine dönüştürüp, var olanla değiştimesi gerekiyor, seçerken diyalog kutusundan seçtiğimi geri yüklemesini istiyorum,

şuan ki kodlarım

Kod: Tümünü seç

yedek al
var
 gun, ay, yil : Word;
 gun_ay_yil : string;
begin
  DecodeDate(Date, yil, ay, gun);
  gun_ay_yil := IntToStr(gun) + '_' + IntToStr(ay) + '_' + IntToStr(yil);
  Memo1.Lines.Clear;
 

 with data.IBBackupService1 do begin



 LoginPrompt := False; 
    Params.Add('user_name=sysdba'); 
    Params.Add('password=masterkey'); 

    Active := True;

    Screen.Cursor := crHourGlass;
    try
     // CloseAllTables;
      DatabaseName := data.atm_db.DatabaseName;
      BackupFile.Clear;
      BackupFile.Add(ExtractFilePath(Application.ExeName) + '..\atm_db_yedek\atm_' + gun_ay_yil +'.gbk');

      ServiceStart;


      While not Eof do



      Memo1.Lines.Add(GetNextLine);

      MessageDlg('Yedekleme başarıyla tamamlandı!', mtInformation, [mbOK], 0);
    finally
      Active := False;
   //   OpenAllTables;
      Screen.Cursor := crDefault;
    end;
  end;

Kod: Tümünü seç

yedeği geri al
var
 gun, ay, yil : Word;
 gun_ay_yil : string;
begin
  DecodeDate(Date, yil, ay, gun);
  gun_ay_yil := IntToStr(gun) + '_' + IntToStr(ay) + '_' + IntToStr(yil);
  Memo1.Lines.Clear;




  with data.IBRestoreService1 do begin

  LoginPrompt := False; 
    Params.Add('user_name=sysdba'); 
    Params.Add('password=masterkey');

    
    Active := True;
    Screen.Cursor := crHourGlass;

  try
     // CloseAllTables;
     BackupFile.Clear;
     DatabaseName.Clear;




      DatabaseName.Add(ExtractFilePath(Application.ExeName) + '..\atm_db\atm_' + gun_ay_yil +'.GDB');

      BackupFile.Add(ExtractFilePath(Application.ExeName) + '..\atm_db_yedek\atm_' + gun_ay_yil +'.gbk');

      ServiceStart;
      While not Eof do
        Memo1.Lines.Add(GetNextLine);
      MessageDlg('Yedek Geri Alındı!', mtInformation, [mbOK], 0);
    finally
      Active := False;

      Screen.Cursor := crDefault;
    end;
  end;
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

GeriAl procedure undaki

Kod: Tümünü seç

DatabaseName.Add(ExtractFilePath(Application.ExeName) + '..\atm_db\atm_' + gun_ay_yil +'.GDB');
kısmını

Kod: Tümünü seç

DatabaseName.Add(ExtractFilePath(Application.ExeName) + '..\atm_db\ATM.GDB');
şeklinde yapman yeterli olacak..
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

hocam böle ikende hata veriyor,değiştirmiyor (replace... ) gibi bi hata veriyor,dosyanın ismini değiştirince hata vermiyor,
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

hocam bide bu arada bu kodun içine progressbar koymak istiyorum nasıl yapabilirim
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

huseyinert yazdı:hocam böle ikende hata veriyor,değiştirmiyor (replace... ) gibi bi hata veriyor,dosyanın ismini değiştirince hata vermiyor,
GeriAl demeden önce veritabanının kapalı olması lazım :idea: Yine de olmuyorsa ATM.GDB yi kod içinden silip gerialmayı dene :wink:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Bir property'sine varsa da üzerine yaz gibi bir seçeneği açman gerekiyor.
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

IBRestoreService1 nesnesinin mi properties ınden yapacağım

arkadaşlar, progresbar konusunda da yardımlarınızı bekliyorum

teşekkür ederim ilginiz için
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

kolay gelsin arkadaşlar, şuanda yedek aldırabiliyorum,yalnız geri alırken var olan dosya ile değiştirme yapmıyor,ilk problem bu

ikinciside yedek leme işlemi yapılırken progressbar da kullanmak istiyorum bu konuda yardımcı olabilecek arkadaşların cevaplarını bekliyorum...
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Cevapla