! CODEBANK 2012 !
İNDİRMEK&DETAYLI BİLGİ ALMAK İÇİN BURAYI TIKLAYINIZ.
ÖNEMLİ AÇIKLAMA: MUTLAKA OKUYUNUZ!
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
procedure TForm1.OnAyarlar(Service: TIBCustomService);begin with Service do begin Active := False; ServerName :='localhost'; {*pc'nin adı veya ip adresi. Ağdaki ve ya kendi pc'niz olabilir. Kendi bilgisayarım olduğu için localhost yazdım*} Protocol :=TCP; {*Basğlantı protokol tipi. Diğer seçenekler için Bileşeni seçip Object Inspectordan bakabilirsiniz.*} LoginPrompt := False; {* Şifreyi biz gireceğimiz için False Yapıyoruz.*} Params.Clear; // Params özelliğini tyemizle Params.Add('user_name=' +'SYSDBA'); //SYSDBA=kullanıcı adı Params.Add('password=' + 'masterkey'); //masterkey=Şifre end; //with // ProgressBar Özelliklerini ayarla ProgressBar1.Min:=0; ProgressBar1.Max:=10; ProgressBar1.Position:=ProgressBar1.Min; Panel1.Show; application.ProcessMessages;end;
if opendialog1.Execute then(sender as tedit).Text:=opendialog1.FileName;
with IBBackupService1 do begin //procedureyi çağır. OnAyarlar(IBBackupService1);//PrograssBar İçin Gerekli Verbose := True;//yedeklenecek veritanaı yolu DatabaseName :=Edit1.text; BackupFile.Clear;{* yedeklemenin yapılacağı konum ve yedek dosyasının adı. ikinci parametre olan =2048 sanırım yedekleme yapılırken verinin kaçar byte olarak kopyalanacağını belirliyor. *} BackupFile.Add(Edit2.text+' =2048'); try Active := True;// yedeklemeye başla ServiceStart; while not EOF do Begin//yedekleme durumunu labela yaz Label5.Caption:=GetNextLine; {*Progresbar özelliklerini ayarla*} if ProgressBar1.Position=ProgressBar1.Max then ProgressBar1.Position:=0; ProgressBar1.Position:=ProgressBar1.Position+1; application.ProcessMessages;End; finally Active := False; Panel1.Hide; end; //try end; //with
with IBRestoreService1 do begin //procedureyi çağır. OnAyarlar(IBRestoreService1);//PrograssBar İçin Gerekli Verbose := True;{* Restore ederken Veritabanının PageeSizeözelliğini ayarla. farklı bir seçeneği seçebilirsiniiz*} Pagesize:=2048;//eski veritabanını sil Options := [Replace]; //yedeklenecek veritanaı yoluDatabaseName.Clear; DatabaseName.Add(Edit4.text); BackupFile.Clear;{* yedeklemenin yapılacağı konum ve yedek dosyasının adı. *}BackupFile.Add(Edit3.text); try Active := True;// yedeklemeye başla ServiceStart; while not EOF do Begin//yedekleme durumunu labela yaz Label5.Caption:=GetNextLine; {*Progresbar özelliklerini ayarla*} if ProgressBar1.Position=ProgressBar1.Max then ProgressBar1.Position:=0; ProgressBar1.Position:=ProgressBar1.Position+1; application.ProcessMessages; End; finally Active := False; Panel1.Hide; end; //try end; //with
merhabalar bu örneği projemde kullandım.şöyle bir şey dikkatimi çektibemim kendi hazırladığım veri tabanının büyüklüğü 1296 kb, bunu silip backup ladığım dosyayı Restore ettim bu dosyanın büyüklüğü 432 kbbu fark neden kaynaklanıyor, bu durum normal mi?teşekkürler..
Delphi7'deki IBX bileşenlerinizi güncelleyin. http://codecentral.borland.com/Item.aspx?id=20257
IBBackupService1.Params.Clear; IBBackupService1.Params.Add(dm.dbsTaha.Params.Strings[0]); IBBackupService1.Params.Add(dm.dbsTaha.Params.Strings[1]); IBBackupService1.BackupFile.Clear; IBBackupService1.BackupFile.Add('C:\Deneme\Veri Yedek\taha.gbk =2048'); IBBackupService1.DatabaseName:=Label1.Caption; {Label1.Caption:='C:\Deneme\Veri\TAHA.FDB'} Dm.dstBurscu.Close; Dm.dstBurslar.Close; Dm.dbsTaha.Connected:=False; with IBBackupService1 do begin Active := True; try ServiceStart; finally Active := False; Application.MessageBox('İşlem Tamam','Uyarı',MB_OK); end; end; Dm.dbsTaha.Connected:=True; Dm.dstBurscu.Open; Dm.dstBurslar.Open;
IBRestoreService1.Params.Clear; IBRestoreService1.Params.Add(Dm.dbsTaha.Params.Strings[0]); IBRestoreService1.Params.Add(Dm.dbsTaha.Params.Strings[1]); IBRestoreService1.BackupFile.Clear; IBRestoreService1.BackupFile.Add('C:\Deneme\Veri Yedek\taha.gbk'); IBRestoreService1.DatabaseName.Add('C:\Deneme\Veri\TAHA.FDB'); Dm.dstBurscu.Close; Dm.dstBurslar.Close; Dm.dbsTaha.Connected:=False; with IBRestoreService1 do begin Active := True; try ServiceStart; finally Active := False; Application.MessageBox('İşlem Tamam','Uyarı',MB_OK); end; end; Dm.dbsTaha.Connected:=True; Dm.dstBurscu.Open; Dm.dstBurslar.Open;
IBRestoreService1.DatabaseName.Add('C:\Deneme\Veri\TAHA.FDB');
IBRestoreService1.DatabaseName.Clear;
Yedeklenen veritabanı ile kullandığıız Firebird sürümü uyuşmuyor. 2.1 ile yedekkleyip, 1.5 ile geri yüklemeye çalıştığınızda böyle bir hata alabilirsiniz.