Testar via SQL se existe campo ou tabela
Pessoal gostaria de saber se tem como quando eu iniciar um sistema ele testar via SQL se existem ´N´ campos em uma tabela ou se existe uma tabela especifica e se não existir CRIAR, teria como fazer isso???
Desde já agradeço
Desde já agradeço
Estanieski
Curtidas 0
Respostas
Wanderok
19/03/2008
query1.close;
query1.sql.clear;
query1.sql.add(´SELECT CLI_NOME FROM CLIENTE_CLI´);
try
query1.open;
except
// Nao tem a tabela ou nao tem o campo
// ( ou voce escreveu algo no sql ou no objeto kkkk :D:D:D
... criar um ou outro...
// pense ai... :D:D:D
end;
Abracao !
query1.sql.clear;
query1.sql.add(´SELECT CLI_NOME FROM CLIENTE_CLI´);
try
query1.open;
except
// Nao tem a tabela ou nao tem o campo
// ( ou voce escreveu algo no sql ou no objeto kkkk :D:D:D
... criar um ou outro...
// pense ai... :D:D:D
end;
Abracao !
GOSTEI 0
Wanderok
19/03/2008
Corrigindo...
/ ( ou voce escreveu algo ERRADO no sql ou no objeto kkkk
/ ( ou voce escreveu algo ERRADO no sql ou no objeto kkkk
GOSTEI 0
Estanieski
19/03/2008
Bah! che! que Óbvio não tinha me ligado, valeu....
GOSTEI 0
Wanderok
19/03/2008
:D:D:D acontece.... :D:D:D
GOSTEI 0
Macario
19/03/2008
Olá colega [b:0e22a4ee63]estanieski[/b:0e22a4ee63]
O código abaixo é para SQL Server
[b:0e22a4ee63]Verifica se tabela existe:[/b:0e22a4ee63]
Verifica se campo existe em uma determinada tabela:
Espero que ajude. 8)
O código abaixo é para SQL Server
[b:0e22a4ee63]Verifica se tabela existe:[/b:0e22a4ee63]
query1.close; query1.sql.clear; query1.sql.add(´select TB.name as [NOME DA TABELA]´); query1.sql.add(´from´); query1.sql.add(´ sysobjects as TB´); query1.sql.add(´where ´); query1.sql.add(´ TB.xtype = ´U´ and TB.name = ´QUALSUATABELA´´); query1.open; if query1.isEmpty then ShowMessage(´Tabela não existe´);
Verifica se campo existe em uma determinada tabela:
query1.close; query1.sql.clear; query1.sql.add(´select tb.name as [Nome da Tabela],´); query1.sql.add(´ co.name as [Nome da Coluna] ´); query1.sql.add(´from syscolumns as co ´); query1.sql.add(´inner join ´); query1.sql.add(´ sysobjects as tb on (tb.id=co.id) ´); query1.sql.add(´where tb.xtype = ´U´ and tb.name = ´TABELA´´); query1.sql.add(´ and co.name = ´CAMPO´´); query1.open; if query1.isEmpty then ShowMessage(´Campo não existe´);
Espero que ajude. 8)
GOSTEI 0