É possível?

14/02/2003

0

:(
Amigos, é possível criar um programa em Delphi para executar um script no banco Firebird v1.0?

Eu preciso executar este script contido em um arquivo txt

Valeu!


Anonymous

Anonymous

Responder

Posts

14/02/2003

Navoid

como assim script cara

me de um exemplo

até


Responder

14/02/2003

Anonymous

como assim script cara me de um exemplo até


Executar varios comandos ddl:

Alter table...

Será que tem como passar parametros para ISQL?


Responder

15/02/2003

Navoid

bom cara, se tem como passar parametros num tenho a minima idéia, agora se vc quer executar um script pelo delphi vc pode fazer o seguinte
abra o arquivo e va lendo até encontrar o caracter ;, depois execute a instrução e vá para a próxima instrução até o final
segue abaixo um exemplo de como fazer isso:

****
procedure executa_script(nome_arquivo: string);
var
temp, instrucao: string;
i: integer;

conteudo: tstringlist;
query: tquery;
begin
conteudo:= tstringlist.create;
query:= tquery.create(nil);

try
conteudo.loadfromfile(nome_arquivo);
temp:= conteudo.text;
i:= pos(´;´, temp);

while i > 0 do
begin
instrucao:= copy(temp, 1, (i - 1));
delete(temp, 1, i + 1);
query.sql.text:= instrucao;
query.execsql;
i:= pos(´;´, temp);
end;

query.sql.text:= temp;
query.execsql;
finally
freeandnil(conteudo);
freeandnil(query);
end;
end;
****

eu num cheguei a testar no delphi, mas funciona, talvez tenha que depurar e ajustar as linhas copy e delete, se for o caso, me manda um script que eu testo e mando o código de novo.

espero ter ajudado

até


Responder

15/02/2003

Anonymous

bom cara, se tem como passar parametros num tenho a minima idéia, agora se vc quer executar um script pelo delphi vc pode fazer o seguinte abra o arquivo e va lendo até encontrar o caracter ;, depois execute a instrução e vá para a próxima instrução até o final segue abaixo um exemplo de como fazer isso: **** procedure executa_script(nome_arquivo: string); var temp, instrucao: string; i: integer; conteudo: tstringlist; query: tquery; begin conteudo:= tstringlist.create; query:= tquery.create(nil); try conteudo.loadfromfile(nome_arquivo); temp:= conteudo.text; i:= pos(´;´, temp); while i > 0 do begin instrucao:= copy(temp, 1, (i - 1)); delete(temp, 1, i + 1); query.sql.text:= instrucao; query.execsql; i:= pos(´;´, temp); end; query.sql.text:= temp; query.execsql; finally freeandnil(conteudo); freeandnil(query); end; end; **** eu num cheguei a testar no delphi, mas funciona, talvez tenha que depurar e ajustar as linhas copy e delete, se for o caso, me manda um script que eu testo e mando o código de novo. espero ter ajudado até


Obrigado.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar