[firebase-br] RES: Executar Script Inteiro, mesmo com erros
Denis da Silva Guerra
ministeriokairos em yahoo.com.br
Seg Fev 20 11:24:49 -03 2006
Oi, Jeferson
Muito obrigado pela ajuda!
Só que dessa forma vc executa cada sentença SQL individualmente, né?
Assim não precisava nem usar o componente TIBScript.
Daria até para executar cada sentença com um simples TIBQuery, certo?
Imaginei que poderia existir um componente que executasse todo um script
ignorando os erros...
Mas se não existe, vou usar a tua solução.
Ah! O que faz a função RetornaCampo? Vc tem o código dela?
[ ]'s
~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^
Denis da Silva Guerra
denisdsguerra em gmail.com
São José do Vale do Rio Preto - RJ
~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^ .
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Jeferson Oliveira
Enviada em: segunda-feira, 20 de fevereiro de 2006 09:41
Para: lista em firebase.com.br
Assunto: Re: [firebase-br] Executar Script Inteiro, mesmo com erros
Olá Denis!
Os erros durante a execução do script devem ser tratados por sua aplicação.
Abaixo um exemplo em Delphi utilizando IBScript que pode ser facilmente
adpatado para uso com qualquer outro componente:
procedure ExecutaSentencasScript(ibsExecutar: TIBScript);
var
TextoScript, SentencaSQL: String;
begin
TextoScript := Trim(ibsExecutar.Script.Text);
while TextoScript <> '' do
begin
SentencaSQL := RetornaCampo(TextoScript, ibsExecutar.Terminator, 1);
ibsExecutar.Script.Text := SentencaSQL;
TextoScript := Copy(TextoScript, Pos(SentencaSQL, TextoScript) +
Length(SentencaSQL) + 1, Length(TextoScript));
try
ibsExecutar.ExecuteScript;
except
on E: Exception do
begin
Continue;
end;
end;
end;
end;
Atenciosamente,
Jeferson Oliveira
Analista de Sistemas
MV Tecnologia Ltda - Belo Horizonte (matriz)
"Denis da Silva Guerra"
<ministeriokairos em yahoo.com.br> escreveu na
mensagem news:10482.9214433723$1140266542 em news.gmane.org...
Pessoal,
Existe algum componente que execute um Script inteiro, mesmo se no meio dele
alguma instrução apresente algum erro?
Por Exemplo:
CREATE GENERATOR GENERATOR_01;
CREATE GENERATOR GENERATOR_02;
CREATE GENERATOR GENERATOR_03;
CREATE GENERATOR GENERATOR_04;
CREATE GENERATOR GENERATOR_05;
Vamos supor que o GENERATOR_03 já exista.
Quando a execução do Script chegar em "CREATE GENERATOR GENERATOR_03;" vai
dar erro.
Meu objetivo é continuar a executar o Script e, assim mesmo, criar o
GENERATOR_04 e o GENERATOR_05.
O IBExpert faz isso na boa para execução dos Scripts...
O IBO faz isso?
Ou preciso de um componente especial para isso?
Obs: Uso Firebird 1.5
[ ]'s
~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^
Denis da Silva Guerra
denisdsguerra em gmail.com
São José do Vale do Rio Preto - RJ
~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^ .
--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.1.375 / Virus Database: 267.15.7/259 - Release Date: 13/02/2006
_______________________________________________________
Yahoo! doce lar. Faça do Yahoo! sua homepage.
http://br.yahoo.com/homepageset.html
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.375 / Virus Database: 267.15.7/259 - Release Date: 13/02/2006
--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.1.375 / Virus Database: 267.15.7/259 - Release Date: 13/02/2006
_______________________________________________________
Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador agora!
http://br.acesso.yahoo.com
Mais detalhes sobre a lista de discussão lista