none
Backup com erro RRS feed

  • Pergunta

  • Ao clicar no botao aparece a msg:

    An unhandled exception of type 'System.ArgumentException' occurred in System.Data.dll
    Additional information: O formato da cadeia de inicialização não está de acordo com a especificação iniciada no índice 0.

    uso o metodo abaixo:

     private void btnBackup_Click(object sender, EventArgs e)
            {
             SqlConnection comn = new SqlConnection(Properties.Settings.Default.CS_Banco);
                comn.Open();
         O ERRO APARECE NESSA LINHA      SqlConnection sql = new SqlConnection(@"backup database GerenciadorProcessos to disk ='C:\\TotiBackup\banco_test.bak" + DateTime.Now.ToString("ddMMyyyy") + ".bak'  WITH COMPRESSION, INIT, FORMAT,  CHECKSUM, STOP_ON_ERROR");
             
                SqlCommand command = new SqlCommand ();
                //command = (sql);
                command.ExecuteNonQuery();
                comn.Close();
                comn.Dispose();

                MessageBox.Show("Backup efetuado!", "Voltar", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

    sexta-feira, 29 de janeiro de 2016 16:06

Respostas

  • eu nao deveria ter suprimido a palavra WITH. O correto é:

    string sql = @"backup database GerenciadorProcessos to disk ='C:\TotiBackup\banco_test.bak" + DateTime.Now.ToString("ddMMyyyy") + ".bak' WITH INIT, FORMAT,  CHECKSUM, STOP_ON_ERROR";

    att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------


    sexta-feira, 29 de janeiro de 2016 19:50
    Moderador

Todas as Respostas

  • Voce esta tentando passar o comando no SQLConnection.. Vpce tem que fazer isso no SqlCommand

     private void btnBackup_Click(object sender, EventArgs e)
            {
             SqlConnection comn = new SqlConnection(Properties.Settings.Default.CS_Banco);
                comn.Open();
         string sql = @"backup database GerenciadorProcessos to disk ='C:\\TotiBackup\banco_test.bak" + DateTime.Now.ToString("ddMMyyyy") + ".bak'  WITH COMPRESSION, INIT, FORMAT,  CHECKSUM, STOP_ON_ERROR";
              
                SqlCommand command = new SqlCommand (sql);
    
                command.ExecuteNonQuery();
                comn.Close();
                comn.Dispose();
    
                MessageBox.Show("Backup efetuado!", "Voltar", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

    att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------


    sexta-feira, 29 de janeiro de 2016 16:39
    Moderador
  • William agora aparece a msg

    string sql = new SqlConnection (@"backup database GerenciadorProcessos to disk ='C:\\TotiBackup\banco_test.bak" + DateTime.Now.ToString("ddMMyyyy") + ".bak'  WITH COMPRESSION, INIT, FORMAT,  CHECKSUM, STOP_ON_ERROR").ToString();

    tive que colocar  .ToString(), senao ficava marcando como erro, porem agora acusa que:

    An unhandled exception of type 'System.ArgumentException' occurred in System.Data.dll

    Additional information: O formato da cadeia de inicialização não está de acordo com a especificação iniciada no índice 0.

    • Editado TiagoJesusTJS sexta-feira, 29 de janeiro de 2016 17:12 erro de digitaçao.
    sexta-feira, 29 de janeiro de 2016 16:52
  • opas falha minha... esqueci de remover uma parte errada do seu codigo

    o correto é:

     private void btnBackup_Click(object sender, EventArgs e)
            {
             SqlConnection comn = new SqlConnection(Properties.Settings.Default.CS_Banco);
                comn.Open();
         string sql = @"backup database GerenciadorProcessos to disk ='C:\\TotiBackup\banco_test.bak" + DateTime.Now.ToString("ddMMyyyy") + ".bak'  WITH COMPRESSION, INIT, FORMAT,  CHECKSUM, STOP_ON_ERROR";
              
                SqlCommand command = new SqlCommand (sql);
    
                command.ExecuteNonQuery();
                comn.Close();
                comn.Dispose();
    
                MessageBox.Show("Backup efetuado!", "Voltar", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
    att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------


    sexta-feira, 29 de janeiro de 2016 18:32
    Moderador
  • verifique se agora esta correto.

    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    sexta-feira, 29 de janeiro de 2016 18:40
    Moderador
  • testei, agora apareceu uma msg:

    Additional information: ExecuteNonQuery: propriedade Connection não foi inicializada.
    sexta-feira, 29 de janeiro de 2016 18:45
  • ok.. mais um erro no seu codigo que me passou desapercebido. falta associar a conexao ao comando:

    private void btnBackup_Click(object sender, EventArgs e)
            {
             SqlConnection comn = new SqlConnection(Properties.Settings.Default.CS_Banco);
                comn.Open();
         string sql = @"backup database GerenciadorProcessos to disk ='C:\\TotiBackup\banco_test.bak" + DateTime.Now.ToString("ddMMyyyy") + ".bak'  WITH COMPRESSION, INIT, FORMAT,  CHECKSUM, STOP_ON_ERROR";
              
                SqlCommand command = new SqlCommand (sql,comn);
    
                command.ExecuteNonQuery();
                comn.Close();
                comn.Dispose();
    
                MessageBox.Show("Backup efetuado!", "Voltar", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
    att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    sexta-feira, 29 de janeiro de 2016 18:49
    Moderador
  • Amigo voce esta sendo incrivel, muito obrigado desde ja, mas agora apareceu um ultimo, creio eu rs

    Additional information: BACKUP DATABASE WITH COMPRESSION não é suportado em Express Edition (64-bit).

    como posso corrigir?


    sexta-feira, 29 de janeiro de 2016 18:57
  • Realmente a compressao nao é suportada nas versoes express.. simplesmente faça assim:

     string sql = @"backup database GerenciadorProcessos to disk ='C:\\TotiBackup\banco_test.bak" + DateTime.Now.ToString("ddMMyyyy") + ".bak', INIT, FORMAT,  CHECKSUM, STOP_ON_ERROR";
        

    att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------


    sexta-feira, 29 de janeiro de 2016 19:09
    Moderador
  • Mais uma msg.

    An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in GerenciadorProcessos.exe

    Additional information: O dispositivo de backup 'INIT' não existe. Para exibir os dispositivos de backup existentes, use a exibição do catálogo sys.backup_devices. Para criar um novo dispositivo de backup, use sp_addumpdevice ou o SQL Server Management Studio.

    desculpe mas é a primeira vez que tento criar um metodo para backup;
    sexta-feira, 29 de janeiro de 2016 19:21
  • eu nao deveria ter suprimido a palavra WITH. O correto é:

    string sql = @"backup database GerenciadorProcessos to disk ='C:\TotiBackup\banco_test.bak" + DateTime.Now.ToString("ddMMyyyy") + ".bak' WITH INIT, FORMAT,  CHECKSUM, STOP_ON_ERROR";

    att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------


    sexta-feira, 29 de janeiro de 2016 19:50
    Moderador
  • William, muitissimo obrigado............. deu certinho, inclusive abri o sql para fazer a chamada de restauraçao e ele reconheceu tudo certo.

    abraçao!

    sábado, 30 de janeiro de 2016 19:34