Como criar uma tabela a partir de uma procedure?

Firebird

18/11/2003

como faço para criar uma tabela a partir de uma procedure do tipo
procedure TForm1.FormClick(Sender: TObject);


Gandalf

Gandalf

Curtidas 0

Respostas

Afarias

Afarias

18/11/2003

vc quer dizer, em um procedimento do DELPHI (não do IB) ... bom, tem várias maneiras, uma delas::

coloque e configure no form ou dataModule os componentes IBDatabase, IBTransaction e IBSQL e faça, no seu procedimento::


with IBSQL1 do
try
SQL.Text := ´CREATE TABLE {...bla,bla,bla...}´;
Transaction.StartTransaction;
ExecQuery;
finally
Transaction.Commit;
end;


se desejar executar vários comandos SQL de uma só vez use o componente IBScript.

T+


GOSTEI 0
Gandalf

Gandalf

18/11/2003

como eu faço para usar uma string para dar o nome da tabela?

grato pela ajuda,


GOSTEI 0
Gandalf

Gandalf

18/11/2003

como eu faço para usar uma string para dar o nome da tabela?


o meu problema e que o valor de um campo anterior tem de ser concatenado e depois ser usado como nome da tabela recem criada


GOSTEI 0
Afarias

Afarias

18/11/2003

concatene a string no TEXTO do comando SQL q está montando. minha forma preferida é usando o comando format!

ex:;

const
SQL1 = ´create table ¬s ( ....bla,bla,bla... )´;

begin

{...}

IBSQL1.SQL.Text := Format(SQL1, [Edit1.Text]);

{...}


mas vc tb pode fazer algo como::

IBSQL1.SQL.Text := ´CREATE TABLE ´ + Edit1.Text + ´ (...bla,bla,bla...)´;



T+


GOSTEI 0
POSTAR