Clipper On Line • Ver Tópico - HBSQL (Sql Tool)

HBSQL (Sql Tool)

Discussão sobre ferramentas de apoio à programação (Clipper/[x]Harbour)

Moderador: Moderadores

 

HBSQL (Sql Tool)

Mensagempor Ranier » 28 Set 2019 10:32

rochinha escreveu:quando eu estava criando a ADOxB para manusear arquivos via ADO me deparei com esta questão de usar áreas e selects sem usar números engessados."

Interessante essa discursão, a respeito do comando/função select, mas com relação a HBDBD e ao utilitário HBSQL, não têm qualquer relação.
A HBDBD não usa qualquer recurso do subsistema RDD, por consequência, não usa "workarea", então ambos select comando/função select, não irão funcionar e não são necessários.
Isso faz com que o próprio executável seja menor, haja visto, que faz "linkedição" da hbnulrdd.lib, retirando todo o subsistema RDD.

JoséQuintas escreveu:Ou, se possível, trocar tudo por uma única linha:

ADO EXECUTE "CREATE TABLE IF NOT EXISTS JPREGUSO ( ..."

Não tenho certeza 100%, mas não são todos os SGDB que suportam "IF NOT EXISTS", de qualquer forma, acho a solução do Rochinha melhor, na medida que pesquisar pela existência da tabela é uma "query" mais leve e rápida, enquanto que o SGDB terá que compilar "CREATE TABLE" e fazer a pesquisa antes de executar.
O problema com pesquisar a tabela antes é que são necessários duas "rounds trips", ou seja, duas viagens completas ao servidor, se a latência for grande, demora mais, com certeza.
Ranier
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 80
Data de registro: 02 Abr 2019 09:01
Cidade/Estado: Goiania/Goias
Curtiu: 0 vez
Mens.Curtidas: 9 vezes

HBSQL (Sql Tool)

Mensagempor JoséQuintas » 28 Set 2019 12:09

Ranier escreveu:Interessante essa discursão, a respeito do comando/função select, mas com relação a HBDBD e ao utilitário HBSQL, não têm qualquer relação.


No final, eu apenas quis direcionar o aviso sobre espaço entre parêntesis e citei o select como exemplo.
E esse exemplo acabou gerando a discussão sobre select.
E depois mudou para o ADO.
E nada disso tem a ver com tópico sobre a FERRAMENTA em HBDBD.
Acabou misturando 3 assuntos, e pode ter complicado pra separar.
Talvez separar a partir dessa mensagem onde usei o select de exemplo, para um tópico "SELECT e Select()"
Ela é a primeira que não tem a ver com o tópico, e que começa a nova discussão sobre select.
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: 18007
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

HBSQL (Sql Tool)

Mensagempor rochinha » 30 Set 2019 02:26

Amiguinhos,

Vejam que não quis mudar o direcionamento para ADO mas somente mostrar que no caso da ADO aproximei e minimizei o código para que ele ficasse o mais compativel com os comandos que usamos no RDD nativo sendo que a diferença seria somente a adição de ADO no inicio da sintaxe além de apresentar uma primeira dificuldade que tive ao usar workáreas.

Talvez minha dificuldade e solução abrissem leques de outras soluções para o motor em questão.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4538
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 800 vezes
Mens.Curtidas: 242 vezes

HBSQL (Sql Tool)

Mensagempor Ranier » 30 Set 2019 08:51

De maneira alguma está atrapalhando, seus comentários são sempre bem vindos.

Com relação a sintaxe da HBDBD, será criada uma Classe para facilitar o uso, compatível com ADO, espero que 100%, assim não existirá dificuldades para escrever um só código que rode nas duas bibliotecas.
Ranier
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 80
Data de registro: 02 Abr 2019 09:01
Cidade/Estado: Goiania/Goias
Curtiu: 0 vez
Mens.Curtidas: 9 vezes

HBSQL (Sql Tool)

Mensagempor Ranier » 05 Out 2019 15:06

Nova versão do utilitário HBSQL, agora com fontes modificados para usar a Classe TConnection da HBDBD.

Novo link:
https://drive.google.com/open?id=1aNE_IHLzFAnewPSfwwBgNh4V9XrHXMvb

Nova versão da biblioteca HBDBD.
Agora com suporte a Classe TConnection.

Função ConnectionNew, cria um object da Classe TConnection
Sintaxe: ConnectionNew( nDRIVER, sCONN )
Retorno: Harbour Object (Class TConnection)

Método Connection(), conecta com o Banco de Dados, de acordo com o DRIVER solicitado e a string de conexão sCONN
Sintaxe: oCONN:Connection()
Retorno: Harbour Integer (0 se OK, > 1 erro)

Método Query(), efetua uma "query SQL" que retorna um DataSet de acordo com a SQL informada
Sintaxe: oCONN:Query( sSQL )
Retorno: Harbour Logical (HB_TRUE se retornou um DataSet, HB_FALSE se falhou!)

Método Exec(), efetua um "comando SQL", de acordo com a sSQL informada
Sintaxe: oCONN:Exec( sSQL, @nROWS )
Retorno: Harbour Integer (0 se OK, > 1 erro)
Parâmetros: nROWS, contém o número de linhas afetadas pelo comando SQL

Método DatasetArray(), cria e retorna um array contendo todo o DataSet
Sintaxe: oCONN:DatasetArray()
Retorno: Harbour Array (vazia se Dataset falhou)

Método FieldsArray(), cria e retorna um array contendo todos os campos presentes no DataSet
Sintaxe: oCONN:FieldsArray()
Retorno: Harbour Array (vazia se Dataset falhou)

Método StrError(), retorna uma string contendo o ultimo erro da conexão
Sintaxe: oCONN:StrError()
Retorno: Harbour String

A Classe TConnection terá total compatibilidade com a Classe TADOClass.
Ranier
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 80
Data de registro: 02 Abr 2019 09:01
Cidade/Estado: Goiania/Goias
Curtiu: 0 vez
Mens.Curtidas: 9 vezes

HBSQL (Sql Tool)

Mensagempor Ranier » 11 Out 2019 10:11

Nova versão do utilitário HBSQL, agora com fontes modificados para usar as Classes TConnection e TDataset da HBDBD.

Novo link:
https://drive.google.com/open?id=1XbBrEQXYkGXSwLp65a0LLGcWKV7ewMkF

Trial da biblioteca HBDBD, disponibilizada.
Disponível para testes em 32 bits Windows.
hbdbd.lib para compiladores Microsoft
libhbdbd.a para Mingw

Incluída também documentação com os métodos disponíveis para o uso:
docs\tconnection.txt
docs\tdataset.txt
docs\tprepare.txt
docs\trecord.txt
Ranier
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 80
Data de registro: 02 Abr 2019 09:01
Cidade/Estado: Goiania/Goias
Curtiu: 0 vez
Mens.Curtidas: 9 vezes

HBSQL (Sql Tool)

Mensagempor Ranier » 12 Out 2019 18:27

Nova versão do utilitário HBSQL, agora com fontes modificados para usar a RDD ARRAYRDD.
Dessa forma é possível, editar e usar os dados com todos os comandos DBF, sem precisar modificar fontes de relatórios, por exemplo.

oDS:Query( "SELECT Nome, Cidade FROM Clientes;" )
aFIELDS := oDS:FieldsArray()
aROWS  := oDS:DatasetArray()
oDS:Close()
dbCreate( "query.dbf", aFIELDS, "ARRAYRDD", .T., "query" )
hb_SetArrayRdd( aROWS )
While( !Eof() )
    ? "Nome: " + FIELD->NOME
    ? "Cidade: " + FIELD->CIDADE
    DBSkip()
End
DBCloseArea()


O melhor de dois mundos, poder usar SGDB e sem precisar modificar quase nada dos fontes atuais, que ainda usam os comandos para DBF.

Novo link:
https://drive.google.com/open?id=1Gok254xRz6yIuOjqAbQkagEpQn0hdKYE

Trial da biblioteca HBDBD, disponibilizada.
Disponível para testes em 32 bits Windows.
hbdbd.lib para compiladores Microsoft
libhbdbd.a para Mingw

Incluída também documentação com os métodos disponíveis para o uso:
docs\tconnection.txt
docs\tdataset.txt
docs\tprepare.txt
docs\trecord.txt
Ranier
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 80
Data de registro: 02 Abr 2019 09:01
Cidade/Estado: Goiania/Goias
Curtiu: 0 vez
Mens.Curtidas: 9 vezes

HBSQL (Sql Tool)

Mensagempor Marcos Kieron » 14 Jan 2020 12:12

Amigo, onde estão os fontes para eu compilar isso no meu ambiente?
Quero usar no Linux
Marcos Kieron
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 66
Data de registro: 14 Jan 2020 10:29
Cidade/Estado: São Paulo/SP
Curtiu: 0 vez
Mens.Curtidas: 5 vezes

HBSQL (Sql Tool)

Mensagempor Ranier » 15 Jan 2020 08:17

Marcos Kieron escreveu:Amigo, onde estão os fontes para eu compilar isso no meu ambiente?
Quero usar no Linux

Não estão disponíveis, esse é um projeto comercial.
Para adquirir a versão para Linux, favor entrar em contato, rc.software@hotmail.com
Ranier
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 80
Data de registro: 02 Abr 2019 09:01
Cidade/Estado: Goiania/Goias
Curtiu: 0 vez
Mens.Curtidas: 9 vezes

HBSQL (Sql Tool)

Mensagempor Marcos Kieron » 15 Jan 2020 11:33

OK, se eu precisar vou entrar em contato, obrigado

mas... alguém já comprou esse seu modulo?
Marcos Kieron
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 66
Data de registro: 14 Jan 2020 10:29
Cidade/Estado: São Paulo/SP
Curtiu: 0 vez
Mens.Curtidas: 5 vezes

Anterior



Retornar para Ferramentas de Apoio

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 5 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