Se a tabela existe então open else create
Olá
Estou a dar os meus primeiros passos no Fb e a minha dúvida é a seguinte
Como posso saber se uma tabela existe no meu banco.
O que pretendo fazer é o seguinte.
Se a tabela existe então open else create.
Obrigado desde já.
Joelpa.
Estou a dar os meus primeiros passos no Fb e a minha dúvida é a seguinte
Como posso saber se uma tabela existe no meu banco.
O que pretendo fazer é o seguinte.
Se a tabela existe então open else create.
Obrigado desde já.
Joelpa.
Joelpa
Curtidas 0
Respostas
Fsflorencio
04/09/2004
Você pode dar um select numa das tabelas de Sistema do FireBird:
SELECT * FROM RDB$RELATIONS
WHERE RDB$RELATION_NAME = ´NOME_DA_TABELA ´
Note que vc deve adicionar espaços no nome da tabela até preencher todos os 31 caracteres.
Se retornar alguma coisa quer dizer que a tabela existe, senão vc dá o seu Create.
SELECT * FROM RDB$RELATIONS
WHERE RDB$RELATION_NAME = ´NOME_DA_TABELA ´
Note que vc deve adicionar espaços no nome da tabela até preencher todos os 31 caracteres.
Se retornar alguma coisa quer dizer que a tabela existe, senão vc dá o seu Create.
GOSTEI 0
Afarias
04/09/2004
|Note que vc deve adicionar espaços no nome da tabela até preencher
|todos os 31 caracteres.
:?: :?: por que??!
T+
|todos os 31 caracteres.
:?: :?: por que??!
T+
GOSTEI 0
Renato_sp
04/09/2004
Aproveitando a duvida do rapaz !!! lendo tbm fiquei um pouco com duvida, e ai vai ela.
O que seria esse RDB$RELATIONS, ele armazena nomes de tabelas que estao criadas? poderia me falar um pouco dele... pq mesmo funcionando o codigo gostaria de entender o pq isso... assim quando precisar ou ate mesmo utilizar um recurso a mais (RDB$RELATIONS) o qual eu nao conheco... Muito obrigado.. !!!!
Renato
O que seria esse RDB$RELATIONS, ele armazena nomes de tabelas que estao criadas? poderia me falar um pouco dele... pq mesmo funcionando o codigo gostaria de entender o pq isso... assim quando precisar ou ate mesmo utilizar um recurso a mais (RDB$RELATIONS) o qual eu nao conheco... Muito obrigado.. !!!!
Renato
GOSTEI 0
Afarias
04/09/2004
|O que seria esse RDB$RELATIONS, ele armazena nomes de tabelas que
|estao criadas?
Exatamente isso! É uma tabela de sistema q guarda informações sobre as tabelas do banco de dados.
|poderia me falar um pouco dele... pq mesmo funcionando o codigo
|gostaria de entender o pq isso...
É apenas uma tabela como outra qualquer, vc pode usá-la para retirar informações sobre as tabelas do seu banco de dados.
Se precisar de informações sobre os campos da tabela dai vc tem q consultar tb a rdb$relation_fields
e por ai vai... existem diversas tabelas de sistema com informações sobre os demais objetos do banco de dados
T+
|estao criadas?
Exatamente isso! É uma tabela de sistema q guarda informações sobre as tabelas do banco de dados.
|poderia me falar um pouco dele... pq mesmo funcionando o codigo
|gostaria de entender o pq isso...
É apenas uma tabela como outra qualquer, vc pode usá-la para retirar informações sobre as tabelas do seu banco de dados.
Se precisar de informações sobre os campos da tabela dai vc tem q consultar tb a rdb$relation_fields
e por ai vai... existem diversas tabelas de sistema com informações sobre os demais objetos do banco de dados
T+
GOSTEI 0