Clipper On Line • Ver Tópico - DBF/SQL

DBF/SQL

Discussão sobre Banco de Dados e RDDs para Clipper/[x]Harbour.

Moderador: Moderadores

 

DBF/SQL

Mensagempor JoséQuintas » 03 Fev 2020 15:36

Como já deu pra perceber, coisas que demoram minutos em DBF, pode ser feitas em segundos com SQL.

O SQL antigamente não tinha aquilo de sub-select, um SELECT a partir de outro SELECT.

Conclusão importante sobre isso, que fica nas entrelinhas:

1)
- DBF parou no tempo, é aquilo e somente aquilo, não há o que evoluir, o que melhorar ou o que agilizar
- SQL continua evoluindo. Ele acrescenta recursos ao seu aplicativo sem precisar trocar de linguagem de programação, pode até deixar as coisas mais rápidas, porque saiu uma versão do banco de dados mais nova, e não porque mexeu no aplicativo

2)
Geralmente console usa DBF, e GUI usa SQL
Quando o cliente diz pra fazer em GUI, pra clicar num botão e sair o relatório, ele pode estar considerando a velocidade do SQL porque considera a velocidade como sendo parte da GUI
Quando programadores falam mal de programa console, pode ser pelo mesmo motivo

3)
O que deixa muitos preocupados, é o fato de ter que aprender outra linguagem de programação, ou outro ambiente, como mobile/internet/etc. O que será se o Windows acabar ou se desktop acabar?
O SQL vai viver por muito tempo, e vai continuar evoluindo.
Se uma tela de consulta ou um relatório, podem ser resumidos a um único comando SQL... significa que aquilo está pronto pra qualquer coisa.

Acho que faltaram textos assim há 10 anos atrás.

Mas NÃO FORCE a migração agora, senão qualquer problema vai se tornar um inferno.
Como eu já disse antes, é começar a "brincar" com SQL.
Brincando bastante, vai transformar sua migração em uma brincadeira.

Acho que pra mim está sendo relativamente fácil, porque faz tempo que brinco com SQL.
Então... minha migração está como uma continuação da brincadeira que eu já fazia.

Acho que a gravação dupla DBF + MySQL ajudou muuuito.
Porque?
Tá funcionando em DBF, se funcionar em MySQL ótimo, senão fica em DBF mesmo pra alterar depois.
Um fonte tá difícil... deixo pra depois, e vou no mais fácil.
E esse fácil vai desvendando o que vou usar no outro mais difícil.
E por aí vai.

Está tudo funcionando em DBF e não precisa mexer?
Melhor ainda... pode testar SQL sem compromisso, tranquilamente, e vai brincando de fazer as coisas.
Poder testar tranquilamente é a melhor coisa que existe, porque.... é tranquilo

Não vejo a hora de estar tudo pronto mas... sem pressa...
Como eu disse por aqui: não é o aplicativo que precisa aprender SQL, sou EU.
Dá pra dizer que estou treinando SQL: vou pegando os módulos e fazendo testes pra ver o que acontece.
Se deu certo, e ficou mais rápido do que em DBF, já fica no aplicativo.

SQL é só começar. O tempo vai fazendo descobrir novidades.

ADO, SQLMIX, RDDSQL, HBMYSQL, qual delas?
Pra tirar proveito do servidor vai usar comandos SQL. TODAS elas aceitam isso.

Se quiser comparar, compare com usar o HeidiSQL: é um programa pra mexer no MySQL, onde você digita o comando e ele trás o resultado.
Compare isso com o tempo que o Harbour vai precisar pra fazer a mesma coisa usando uma dessas RDDs.
Se no HeidiSQL demora 1 segundo, mas com a LIB demora minutos.... então a LIB é problema
E... os comandos SQL vão ser os mesmos, não importa o que usar, então vai estar aprendendo/treinando SQL, seja qual for a escolha.
No começo interessa aprender SQL, se vai demorar 1 segundo ou até 10 segundos ou mais, tanto faz, vai demorar pra fazer seus testes, pra se acostumar com isso, então tanto faz se é muito rápido ou apenas mais rápido que DBF.
Usar um mais lento vai ser ruim?
De repente isso vai fazer com que descubra comandos mais rápidos.
Então... não importa... vai brincando... vai se acostumando... quando achar que chegou numa situação confortável, vai em frente e pronto.
E lembre-se que pode brincar com ADS local também, usar comandos SQL sobre DBFs.
ADS Local existe, é grátis, pode ser usado pra brincar com DBFs... então vamos brincar...
Vai servir pra treinar SQL, pra preparar pra outra base de dados, ou talvez até pra já deixar no aplicativo em DBF e já ficar mais rápido. Seja como for, não vai ser aprendizado perdido.

Repetindo: se alguém tivesse me explicado dessa forma, ou se eu tivesse entendido isso há 10 anos atrás.... talvez já estivesse tudo em SQL há 9 anos atrás.
Como só enxerguei isso no fim de 2019.... tudo bem... em 2020 vai estar resolvido...

E pra vocês que usam DBF.... é começar a brincar em 2020, e talvez migrar em 2020 mesmo, ou 2021, ou 2022, sem pressa, quando se sentir confortável vai fazer isso, por enquanto é ir treinando e se convencendo de que vale a pena.
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

DBF/SQL

Mensagempor susviela@bol.com.br » 03 Fev 2020 15:59

Concordo com você, e acrescento ainda, se for um sistema pequeno uma boa dica é começar com o SQLite que já está "embarcado" no Harbour sem precisar, instalar servidores SQL.

Para quem não migrou ainda para o SQL .. esse depoimento do colega é de uma contribuição muito boa, um incentivo e tanto.

Está esperando o que, para começar os testes. Harbour / SQL

Temos aqui nesse excelente fórum uma fonte de informações.

#Susviela
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar de usuário

susviela@bol.com.br
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 236
Data de registro: 30 Jun 2017 11:17
Cidade/Estado: São José / SC
Curtiu: 153 vezes
Mens.Curtidas: 24 vezes

DBF/SQL

Mensagempor Fernando queiroz » 13 Mar 2020 21:46

O que mata é essa ansiedade , fiz as conversões de DBF para MARIADB e usando o HEIDISQL andei brincando com o banco local e remoto

agora a vontade é de ver algo na aplicação harbour , preciso de umas dicas de como fazer um browse pegando os dados do MARIADB.

o retorno do SELECT é um array?
como jogar isso no BROWSE ?
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

DBF/SQL

Mensagempor JoséQuintas » 13 Mar 2020 22:29

Como já comentei no fórum, o browse que postaram foi exatamente a parte que faltava pra ir em frente.
Faz o browse direto com o resultado do select.
Aqui ajustado, com referência ao post original

http://www.pctoledo.com.br/forum/viewtopic.php?f=43&t=23720
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




Retornar para Banco de Dados

Quem está online

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