Criar Banco em Execução, tem como?
olá pessoal,
Gostaria de Saber se tem Como criar Tabelas,Generator,trigges em tempode execução?
e como q se faz?
obrigado
Gostaria de Saber se tem Como criar Tabelas,Generator,trigges em tempode execução?
e como q se faz?
obrigado
Daniel Martins
Curtidas 0
Respostas
Sistemald
18/08/2005
Qual meio de acesso você usa ou pretende usar?
GOSTEI 0
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
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
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
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
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?
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
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.
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
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...
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