none
ATUALIZAR BANCO DE DADOS - EXECUTÁVEL RRS feed

  • Pergunta

  • Boa tarde pessoal,

       Estou procurando alguma aplicação que possa realizar a seguinte atividade: atualizar o banco de dados devido as atualizações do nosso software.
       Vou detalhar um pouco mais:
    - Desenvolvemos nossa aplicação com acesso ao SQL Server. De tempos em tempos necessitamos realizar atividades de criação de novos campos, alimentar o banco, manutenções de índices.
       Porém, solicitar ao pessoal que execute tal atividade é algo complexo. Quero facilitar a vida, fazendo com que o usuário apenas execute uma aplicação e esta faça conexão com o banco e atualizações necessárias.

       Caso alguém conheça, agradeço, pois atualmente utilizo uma aplicação em "delphi 7" que dá um trabalho.

    At,
    Ricardo Gerhard
    MCSE/MCSA/ITIL/CCNA/CCA
    sexta-feira, 5 de fevereiro de 2010 16:59

Todas as Respostas

  • Ricardo,
    veja se essa dica atende.

    Crie uma tabela no seu banco por que irá guardar as atualizações ja realizadas exemplo
    id|NmAtualizacao


    Supondo que vc tenha uma versão que necessita criar uma tabela nova no seu banco.
    Codifique o login da sua aplicação para que ao acessar o sistema e se esta tabela nao tiver criada criar via "create table novatabela_teste"
    Autiliza a tebela de controle
    id|NmAtualizacao
    1   novatabela_teste

    Ao realizar o login na proxima vez verifique se tem um registro na tabela de controle com o titulo novatabela_teste, se encontrar nao cria novamente se nao encontrar cria a tabela e atualiza  o seu controle.

    Ok

    Marcos
    sexta-feira, 5 de fevereiro de 2010 21:37
  • Obirago pela dia mas na verdade, já tenho a tabela onde armazeno as versões dos software instalados.
    Eu já crio as estruturas para validar ase as alterações são necessárias nas tabelas e colunas.

    O meu problema é justamente gerar a aplicação que conecte no banco e realize os ajustes, sem utilizar as interfaces comuns.

    Resumindo, quero fazer o código T-SQL virar um exectuável para sair atualizando rapidamente em todos os clientes, famosos NNF (Next,Next, Finish).
    sábado, 6 de fevereiro de 2010 11:39
  • Se voce estiver no Servidor você poderá executar via SQLCmd.

    Veja se isso atende.
    http://msdn.microsoft.com/pt-br/library/ms170572.aspx

    Marquinhos Não esqueça de qualificar a resposta.
    sábado, 6 de fevereiro de 2010 16:02
  • Ricardo,
    Seu problema é muito comum em empresas de desenvolvimento de softwares. Não conheço algo pronto para resolver seu problema. O que pode ser feito é uma aplicação onde essa deverá realizar algumas atividades automaticas. Principalmente caso aconteça erros durante o procedimento de atualização.

    Em consultoria a uma empresa daqui de Fortaleza contruir um instalador com camada de abstração ORACLE e SQL SERVER. O mesmo fazia o Deploy da aplicação, registro de tlbs,dll...etc, Atualizava banco de dados com opção de Backup e caso falha-se realizava o restore e o melhor, tomava algumas decisções em determinados erros. Isso tudo de facil entendimento para o Desenvolvedor pois a configuração utilizamos arquivo XML.

    Particulamente não conheço uma solução facil. Então vamos ver se alguem tem alguma boa dica de ferramenta.

    []´s

    SQL Server - SQLOS
    http://leivio.spaces.live.com/blog/cns!A9C38548B0E679DB!236.entry

    MCP | MCTS | MCITP - DBA SQL Server Sênior http://leivio.spaces.live.com/ | http://br.linkedin.com/in/leivio
    domingo, 7 de fevereiro de 2010 16:56
  • Leivio,

    Sua solução é muito interessante aqui na empresa, adotamos um mecanismo mais simples, que verifica o número da versão da aplicação e sua data de alteração, com isso realizado todos os procedimentos necessários para baixar a aplicação nas devidas máquinas e realizar os procedimentos de alteração no servidor com base em scripts que sempre geramos com as estruturas de banco de dados alteradas.


    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    domingo, 7 de fevereiro de 2010 18:36
    Moderador
  • Pois é Galvão,
    Por isso acredito que cada software tem uma necessidade especifica para atualização de sua versão. Por isso se torna complicado encontrar alguma solução já pronta.
    MCP | MCTS | MCITP - DBA SQL Server Sênior http://leivio.spaces.live.com/ | http://br.linkedin.com/in/leivio
    segunda-feira, 8 de fevereiro de 2010 12:51
  • Ricardo,

    para atualizar objetos do SQL Server via aplicação você pode usar as APIs específicas para isso. No SQL Server 2000 chamavam-se DMO, agora no 2008 você deve utilizar o SMO.

    Espero ter ajudado.


    Alex M. Bastos http://bastosalex.spaces.live.com Classifique as respostas para manter a qualidade do forum.
    segunda-feira, 8 de fevereiro de 2010 14:06