Ejemplo n.º 1
0
        private void hsBackup_Click(object sender, EventArgs e)
        {
            n = 0;
            lvBackupMessage.Items.Clear();
            EditToData();

            string cns = ConnectionStrings.Instance().MakeConnectionString(_dbReg);
            var    bu  = new BackupClass(cns);
            var    lf  = new List <FirebirdSql.Data.Services.FbBackupFile>();

            for (int i = 0; i < lvBackup.Items.Count; i++)
            {
                ListViewItem lvi = lvBackup.Items[i];
                FirebirdSql.Data.Services.FbBackupFile bf = (FirebirdSql.Data.Services.FbBackupFile)lvi.Tag;
                lf.Add(bf);
            }
            bu.SetFiles(lf.ToArray());
            bu.Backup.ServiceOutput += Backup_ServiceOutput;
            if (cbBackupIgnoreChecksum.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbBackupFlags.IgnoreChecksums);
            }
            if (cbBackupDisableTriggers.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbBackupFlags.NoDatabaseTriggers);
            }
            if (cbBackupMetatdataOnly.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbBackupFlags.MetaDataOnly);
            }
            if (!cbBackupGarbageCollect.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbBackupFlags.NoGarbageCollect);
            }
            if (!cbBackupTransportable.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbBackupFlags.NonTransportable);
            }
            if (cbBackupOldDescriptions.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbBackupFlags.OldDescriptions);
            }
            if (cbBackupConvert.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbBackupFlags.Convert);
            }
            if (cbBackupLimbo.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbBackupFlags.IgnoreLimbo);
            }
            if (cbBackupExpand.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbBackupFlags.Expand);
            }

            bu.Execute();
        }
Ejemplo n.º 2
0
        private void hsAddRestoreFile_Click(object sender, EventArgs e)
        {
            FirebirdSql.Data.Services.FbBackupFile bf = new FirebirdSql.Data.Services.FbBackupFile(txtRestoreLocation.Text);
            bf.BackupLength = StaticFunctionsClass.ToIntDef(txtRestoreFileSize.Text.Trim(), 0);
            string[]     obarr = { bf.BackupFile, bf.BackupLength.ToString() };
            ListViewItem lvi   = new ListViewItem(obarr);

            lvi.Tag = bf;
            lvRestore.Items.Add(lvi);
        }
Ejemplo n.º 3
0
        private void hsRestore_Click(object sender, EventArgs e)
        {
            n = 0;
            var ca = new ConnectionAttributes();

            ca.Server = DBReg.Server;
            //SE  ca.Client = DRC.Client;
            ca.DatabasePath   = txtRestoreDetinationDatabasePath.Text;
            ca.Password       = DBReg.Password;
            ca.User           = DBReg.User;
            ca.ConnectionType = DBReg.ConnectionType;
            ca.CharSet        = DBReg.CharSet;
            ca.PacketSize     = DBReg.PacketSize;
            ca.Port           = DBReg.Port;

            string connstr = ConnectionStrings.Instance().MakeConnectionString(ca);

            lvRestoreMessage.Items.Clear();
            var bu = new RestoreClass(connstr);

            bu.Restore.ServiceOutput += Restore_ServiceOutput;

            var lf = new List <FirebirdSql.Data.Services.FbBackupFile>();



            for (int i = 0; i < lvRestore.Items.Count; i++)
            {
                ListViewItem lvi = lvRestore.Items[i];
                FirebirdSql.Data.Services.FbBackupFile bf = (FirebirdSql.Data.Services.FbBackupFile)lvi.Tag;

                lf.Add(bf);
            }
            bu.SetFiles(lf.ToArray());

            if (rbReplaceDatabase.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbRestoreFlags.Replace);
            }
            else
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbRestoreFlags.Create);
            }
            if (cbRestoreNoIndices.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbRestoreFlags.DeactivateIndexes);
            }
            if (cbRestoreNoShadows.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbRestoreFlags.NoShadow);
            }
            if (cbRestoreInvidualCommit.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbRestoreFlags.IndividualCommit);
            }
            if (cbRestoreMetatdataOnly.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbRestoreFlags.MetaDataOnly);
            }
            if (cbRestoreNoVaildy.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbRestoreFlags.NoValidity);
            }
            if (cbRestoreUseAllSpace.Checked)
            {
                bu.AddOptions(FirebirdSql.Data.Services.FbRestoreFlags.UseAllSpace);
            }
            ConnectionPoolClass.Instance().CloseAllConnections();
            if (ConnectionPoolClass.Instance().AktCON != null)
            {
                ConnectionPoolClass.Instance().AktCON.Close();
            }
            bu.Execute();
            DbExplorerForm.Instance().MakeDatabaseTree(true);
        }