[firebase-br] commit ou rollback em um script.

Rodrigo Gomes da Silva rodrgomes em gmail.com
Qua Jul 2 11:31:50 -03 2014


Siro,

Simplesmente não funciona DDL e depois um DML na mesma transação. Se vc
cria tabela e depois consegue povoar, então o engine ou script que vc ta
usando faz um commit do DDL, impossibilitando de dar um rollback de antes
da criação da tabela caso tiver algum problema com os dados.

Se vc cria uma tabela e não da este commit não consegue fazer nenhum acesso
a ela, nem pra inclusão de dados, nem mesmo pra consulta dela vazia.


Em 1 de julho de 2014 18:34, Siro <siro em protej.com.br> escreveu:

> Não podem ou não devem?
> Pq faço isto a muito tempo e nunca tive problemas.
>
> Criar "Tabela".
> Povoar "Tabela".
> Criar "Campo", Alterar "Campo".
> Inserir dados referente aos Campos
> Etc...
>
>
>
> Em 18/06/2014 14:32, Gladiston Santana escreveu:
>
>  Colega,
>>
>> Scripts DDL (create table e afins) não podem ser inseridos junto com DML
>> (update, insert...).
>> Então você simplesmente roda o script de DDL e commita no final, recomendo
>> que gere o arquivo texto .sql e rode-o com o isql.exe <seuarquivo.sql, se
>> não ocorrer o erro então submeter os insert/update/delete de dados de que
>> precisa.
>> Se precisar manipular dados entre servidores distintos do tipo se falhar
>>>> também deve falhar cá, o chamado two phase commit, voce precisa de
>> componentes especiais como o AnyDac.
>>
>>
>> Em 18 de junho de 2014 09:55, Carlos Midia <carlosmidia2013 em gmail.com>
>> escreveu:
>>
>>  Bom dia a todos, mensalmente faço atualizações no banco de dados dos
>>> clientes em gostaria de saber como faço para:
>>>
>>> tipo tenho 30 scripts ai se passar todos sem erro ele dar um commit
>>> e se der algum erro ele dar um  rollback .
>>>
>>>
>>> tipo como colocar esses scripts em um bloco de comando ao qual se der
>>> erro
>>> em algum comando deixar o banco de dados intato como era antes.
>>>
>>>
>>> meus comandos são tipo:
>>>
>>> criar tabela
>>> excluir tabela
>>> criar trigger
>>> excluir trigger
>>> insert
>>>
>>> e etc...
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>
>>>
>>
>>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista