Criar Banco em Execução, tem como?

Delphi

18/08/2005

olá pessoal,
Gostaria de Saber se tem Como criar Tabelas,Generator,trigges em tempode execução?
e como q se faz?
obrigado


Daniel Martins

Daniel Martins

Curtidas 0

Respostas

Sistemald

Sistemald

18/08/2005

Qual meio de acesso você usa ou pretende usar?


GOSTEI 0
Asensio

Asensio

18/08/2005

Sim é possível pois vc estará usando comando SQL para crialos.
Dentro de uma TQuery (Exemplo simples, pois não sei o banco que vc está usando)

With TQuery1 Do
Begin
SQL.Clear;
SQL.Add(´CREATE TABLE BD_TESTE ( ´);
SQL.Add(´CODIGO INTEGER NOT NULL,´);
SQL.Add(´DESCRICAO VARCHAR(50))´);
ExecSql;
End;

Nesse trecho bem simplificado criei uma tabela BD_TESTE com os campos CODIGO E DESCRICAO.

Isso é um exemplo simples para vc ter uma noção de como fazer, mas vc terá que criar tudo sempre via SQL.

Fui


GOSTEI 0
Sistemald

Sistemald

18/08/2005

Recomendo você criar seu banco de dados no Ibexpert, e depois pegar a DDL, assim você terá o Script pronto sem dar trabalho.


GOSTEI 0
Adriano Santos

Adriano Santos

18/08/2005

Recomendo você criar seu banco de dados no Ibexpert, e depois pegar a DDL, assim você terá o Script pronto sem dar trabalho.


Concordo com o [b:4cec4cd028]sistemald[/b:4cec4cd028], é muito mais fácil assim.


GOSTEI 0
Daniel Martins

Daniel Martins

18/08/2005

eu Fiz assim:

Utilizei uma Query e coloquei
memo1.lines.LoadFromFile(´sql.txt´);
query1.sql.add(memo1.txt);
Query1.execSQl;

Só quando ele executa o sql ele da um erro no Create da tabela, e eu peguei o mesmo script e executei no interbase e deu certo...

´Recomendo você criar seu banco de dados no Ibexpert, e depois pegar a DDL, assim você terá o Script pronto sem dar trabalho.´
Como é q faz isso?


GOSTEI 0
Adriano Santos

Adriano Santos

18/08/2005

[quote:94f46ff111=´DAniel S Martins´]eu Fiz assim:

Utilizei uma Query e coloquei
memo1.lines.LoadFromFile(´sql.txt´);
query1.sql.add(memo1.txt);
Query1.execSQl;

Só quando ele executa o sql ele da um erro no Create da tabela, e eu peguei o mesmo script e executei no interbase e deu certo...

´Recomendo você criar seu banco de dados no Ibexpert, e depois pegar a DDL, assim você terá o Script pronto sem dar trabalho.´
Como é q faz isso?[/quote:94f46ff111]

Caro amigo, talvez vc precise usar um componente específico para executar o script. Por exemplo: no interbase se não me engano vc usa o IbSQL, me corrijam se estiver errado, quando quer executar um script com vários comandos, CREATE TABLE, CREATE INDEX, ALTER TABLE e etc.


GOSTEI 0
Daniel Martins

Daniel Martins

18/08/2005

Olá Amigos, estou postando a Solução q encontrei:

Na edição nº60 da revista Clube Delphi, que traz a matéria 60 dicas e soluções em delphi, a dica nº 45 fala como criar tabelas em tempo de execução usando o SqlConnetion.executeDirect(´create table ...´);
ja usei e realmente da certo..

Vlw...


GOSTEI 0
POSTAR