Clipper On Line • Ver Tópico - Harbour - SQLMIX x SQLRDD

Harbour - SQLMIX x SQLRDD

Discussão sobre SQL

Moderador: Moderadores

 

Harbour - SQLMIX x SQLRDD

Mensagempor pauloa1 » 25 Fev 2015 15:03

Janio!

Ao mudar de dbf para postgres eu eliminei mais de 80% dos índices.

Só uso em tabelas grandes e em casos de muito uso.

Com banco de dados, usar muitos índices pode dar efeito contrário, pode deixar lento, pois toda vez que adicionar ou alterar um registro, ele precisa atualizar o índice e também deixa o banco maior.

É na prática que você vai descobrir quando é será necessário ter um índice na tabela ou não.

Paulo
pauloa1
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 189
Data de registro: 25 Jun 2008 14:57
Cidade/Estado: Augusto Pestana-RS
Curtiu: 1 vez
Mens.Curtidas: 5 vezes

Harbour - SQLMIX x SQLRDD

Mensagempor janio » 25 Fev 2015 15:50

Itamar,

Fato concreto: No meu sistema com mediator (mysql), mas usando como se dbf fosse, em um cliente o relatorio de VENDAS DO DIA tem mais ou menos 5.000 registros.

Gero esse relatorio da maneira clássica:

Select Venda
DbSetOrder(1)
DbGoTop()
OrdScope( 0, Data )
OrdScope( 1, Data )
DbGoTop()
Do While !Eof()

...
DbSkip()

Enddo

Pergunta1: Quer dizer que a cada DbSkip() eh feito um novo select la no servidor? Num relatorio com 5mil registros, por exemplo, são feitos 5mil selects?

Pergunta2: Com SQLMIX esse select seria feito no servidor apenas uma vez e o DbSkip() será feito apenas na consulta devolvida, e não no servidor?

Ou seja, em vez de 5mil selects eu teria apenas 1 select?? eh isso?

Janio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar de usuário

janio
Colaborador

Colaborador
 
Mensagens: 1809
Data de registro: 06 Jul 2004 07:43
Cidade/Estado: UBAJARA - CE
Curtiu: 7 vezes
Mens.Curtidas: 56 vezes

Harbour - SQLMIX x SQLRDD

Mensagempor Itamar M. Lins Jr. » 25 Fev 2015 15:51

Com SQLRDD não precisa instalar nada no servidor, além do proprio mysql.

Precisa do Drive ODBC p/ MSSQL, mas p/ Postgres, MySQL não precisa.

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

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 3676
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 125 vezes
Mens.Curtidas: 191 vezes

Harbour - SQLMIX x SQLRDD

Mensagempor Itamar M. Lins Jr. » 25 Fev 2015 15:55

Fato concreto: No meu sistema com mediator (mysql), mas usando como se dbf fosse, em um cliente o relatorio de VENDAS DO DIA tem mais ou menos 5.000 registros.


Eu não sei.
Eu sei que no SQLMIX isso é feito na memoria RAM, não é mais requisitado nada no servidor.
Tem que ver o log de requisições ai do servidor para ter certeza.

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

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 3676
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 125 vezes
Mens.Curtidas: 191 vezes

Harbour - SQLMIX x SQLRDD

Mensagempor Itamar M. Lins Jr. » 25 Fev 2015 18:44

Pergunta2: Com SQLMIX esse select seria feito no servidor apenas uma vez e o DbSkip() será feito apenas na consulta devolvida, e não no servidor?


É isso mesmo. O servidor fica desafogado dessa tarefa.

Se o Mediator aceitar SELECT(comandos SQL), vc pode fazer a mesma coisa.

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

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 3676
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 125 vezes
Mens.Curtidas: 191 vezes

Harbour - SQLMIX x SQLRDD

Mensagempor Itamar M. Lins Jr. » 25 Fev 2015 20:38

Outra coisa.
Os comandos SQL, são universais, enquanto os comandos p/ manipulação do DBF só com DBF.
Então qualquer comando SQL que vc aprenda a usar, irá servir p/ qualquer linguagem.
"UPDATE ARQUIVOESTOQUE SET QUANTIDADE=QUANTIDADE+1 WHERE PRODUTO=10" 

Podemos usar isso ai em cima p/ JAVA, PHP, C#, qualquer linguagem, agora tem como usar isso ai em baixo no JAVA ?
Select Venda
DbSetOrder(1)
DbGoTop()
OrdScope( 0, Data )
OrdScope( 1, Data )
DbGoTop()
Do While !Eof()


É por causa dessas coisas que digo: Quem usa sintaxe xBase p/ tudo na manipulação de DBF´s dentro dos SGBD´s da vida, continua preso, não se libertou. Não sabe o que esta deixando de ganhar. Não entendeu nada do que é SGBD.(Sistema Gerenciador de Base de dados), e os gurus do Harbour sabem disso, por isso não temos no Harbour alguma coisa similar ao SQLRDD. Para eles a SQLMIX é melhor, ou acesso nativo ou ADO, SQLMIX acessa/trabalha tem um driver para OCI Oracle. Os caras estão lá na frente!

Tem o ADS também p/ DBF que trabalha com TCP/IP é free p/ 5 usuários se não me engano e aceita sintaxe SQL.

E eu cá traz com Letodb, estão fazendo tanta coisa boa no Letodb, está difícil abandonar... meus clientes não tem bases tão grandes assim que justifique usar PostGres por exemplo.

Quem usa Harbour+LINUX com DBF também não sabe o que é corromper indices.
Quem usa Harbour+Windows com DBF e Terminal Service IDEM.
Quem usa Harbour+Letodb+Linux ou Windows IDEM, não sabemos o que é indices corrompidos, nem lentidão de rede.
O Przemek aumentou p/ acima de 4TB com 64Bits os Indices CDX...

Tem muita coisa mais simples de usar com DBF´s e que podemos ganhar tempo p/ mudarmos completamente para bancos relacionais e usar todos os recursos destas ferramentas.

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

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 3676
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 125 vezes
Mens.Curtidas: 191 vezes

Harbour - SQLMIX x SQLRDD

Mensagempor sasquast » 31 Jul 2019 17:02

Muito obrigado a todos por tudo.

Estive estudando e acabei caindo nesse tópico na discussão entre SQLMIX x SQLRDD. Ao que me pareceu o SQLMIX seria, de forma básica e muito resumida, para o interessado em utilizar comandos SQL, ou seja, evoluir sua aplicação alterando seus fontes. Já o SQLRDD seria mais para quem quer manter seu fonte o mais inalterado possível, inclusive com os comandos de acesso a base DBF, mas que o SQLRDD faria essa ponte para o SQL. Estou correto ?

Outra dúvida é a seguinte, se falou em TOTVS, TOPConnect, DBAccess ... É possível, apenas para um teste, conectar uma aplicação xHarbour cujo fonte está totalmente voltado para DBF ao DBAccess e acessar um banco SQL, ou seja, como se falou que o SQLRDD é quase um clone do DBAccess da TOTVS , seria possível utilizar:

xHarbour + SQL através do DBAccess em vez do SQLRDD ?

Pergunto isso tendo a empresa optado por alterar o mínimo possível os fontes originais.
sasquast
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 6
Data de registro: 31 Jul 2019 16:47
Cidade/Estado: Volta Redonda / RJ
Curtiu: 13 vezes
Mens.Curtidas: 0 vez

Harbour - SQLMIX x SQLRDD

Mensagempor sygecom » 01 Ago 2019 22:49

Não conheço muito de TOTVS, mas até onde sei, apesar de ser um xbase no PROTEUS, ele não compila com xharbour free. Eles tem o próprio compilador deles.
Então deduzo que não roda xHarbour + DBAccess

Acredito que o SQLRDD não é quase um clone do DBAccess da TOTVS, o DBAccess é muito mais parecido com o Mediator, que fica rodando no servidor um interpretador dos comando, para rodar ele em SQL, já o SQLRDD faz isso tudo no lado cliente e muito rápido.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 6637
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 75 vezes

Harbour - SQLMIX x SQLRDD

Mensagempor sasquast » 02 Ago 2019 10:51

Entendi,

É que como não tenho o SQLRDD, e aqui na empresa possuímos o ERP da TOTVS e consequentemente o DBAccess e MSSQL, pensei em fazer um teste para ver se conseguia conectar minha aplicação em Clipper xHarbour (Outro sistema) que hj roda toda em DBF, no SQL utilizando o que tenho em mãos.

O tópico é antigo, hoje em dia, 2019, que ferramenta free, caso exista, você recomenda apenas para esse teste inicial. Dependendo do que conseguirmos aí sim, investiremos em algo mais definitivo.

Muito obrigado.
sasquast
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 6
Data de registro: 31 Jul 2019 16:47
Cidade/Estado: Volta Redonda / RJ
Curtiu: 13 vezes
Mens.Curtidas: 0 vez

Harbour - SQLMIX x SQLRDD

Mensagempor JoséQuintas » 02 Ago 2019 11:42

sasquast escreveu:O tópico é antigo, hoje em dia, 2019, que ferramenta free, caso exista, você recomenda apenas para esse teste inicial.
Dependendo do que conseguirmos aí sim, investiremos em algo mais definitivo.


Sei lá....
É só um teste inicial...
coisinha de nada...
todo o aplicativo funcionando com outra base de dados....
coisa à toa...
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 11592
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 12 vezes
Mens.Curtidas: 740 vezes

Harbour - SQLMIX x SQLRDD

Mensagempor JoséQuintas » 02 Ago 2019 13:22

sasquast escreveu:pensei em fazer um teste para ver se conseguia conectar minha aplicação em Clipper xHarbour (Outro sistema) que hj roda toda em DBF, no SQL utilizando o que tenho em mãos.


Por acaso avaliou que vai ter que mexer em todos IF ! File( "arquivo.cdx" ) por exemplo?
Com certeza não existe LIB mágica, querendo ou não, vai ter que colocar a mão na massa, e pode não ser rápido fazer direto no aplicativo.

Pode até já ir mexendo nessa parte, que vai ter que ser feita pra qualquer que seja a opção usada depois.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 11592
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 12 vezes
Mens.Curtidas: 740 vezes

Anterior



Retornar para SQL

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 1 visitante


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
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro