Clipper On Line • Ver Tópico - Saber se existe uma tabela no BD

Saber se existe uma tabela no BD

Discussão sobre SQL

Moderador: Moderadores

 

Saber se existe uma tabela no BD

Mensagempor Itamar M. Lins Jr. » 02 Abr 2021 00:14

Olá!
  dbusearea( , , "SELECT COUNT(*) as nTot FROM information_schema.tables WHERE table_schema = 'basedados' AND table_name = 'country' ",'RS' )
   ? nToT
   rs->(dbCloseArea())


Tudo vem em ARRAY na memória e usamos os comandos para DBF.

Usando MariaDB e SQLMIX no Linux e Windows.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Sabe se existe um tabela no BD

Mensagempor JoséQuintas » 02 Abr 2021 09:02

Em ADO:

oRs := Conexao:Execute( "SELECT COUNT(*) as nTot FROM information_schema.tables WHERE table_schema = 'basedados' AND table_name = 'country' " )
? oRs:Fields( "NTOT" ):Value
oRs:Close()


A diferença acaba sendo o formato do retorno, em ADO o formato é.... ADO.
Em SQLMIX é DBF, em hbMySQL é array.

No final, a escolha é sobre o que vai ficar mais fácil para o usuário e/ou o estilo de programação do usuário.
Lógico... se não for Windows não tem ADO.

Mas.... lógico também:
Mudar de DBF pra MySQL vai precisar mudanças nos fontes e na cabeça do programador.
Mudar de ADO pra SQLMIX ou hbMySQL, apesar de também ter mudança nos fontes, a cabeça do programador já vai estar "no esquema".
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18008
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Saber se existe uma tabela no BD

Mensagempor Fernando queiroz » 03 Abr 2021 19:09

JoséQuintas escreveu:Em ADO:

oRs := Conexao:Execute( "SELECT COUNT(*) as nTot FROM information_schema.tables WHERE table_schema = 'basedados' AND table_name = 'country' " )
? oRs:Fields( "NTOT" ):Value
oRs:Close()


A diferença acaba sendo o formato do retorno, em ADO o formato é.... ADO.
Em SQLMIX é DBF, em hbMySQL é array.

No final, a escolha é sobre o que vai ficar mais fácil para o usuário e/ou o estilo de programação do usuário.
Lógico... se não for Windows não tem ADO.

Mas.... lógico também:
Mudar de DBF pra MySQL vai precisar mudanças nos fontes e na cabeça do programador.
Mudar de ADO pra SQLMIX ou hbMySQL, apesar de também ter mudança nos fontes, a cabeça do programador já vai estar "no esquema".


Nos meus estudo verifiquei que o ODBC é o que tem para WINDOWS/LINUX com a sintaxe mais próxima do ADO,
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 737
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Porto Alegre/RS
Curtiu: 12 vezes
Mens.Curtidas: 58 vezes




Retornar para SQL

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 12 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro