Clipper On Line • Ver Tópico - Migração de Dbf para MariaDb 10.4

Migração de Dbf para MariaDb 10.4

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

Moderador: Moderadores

 

Migração de Dbf para MariaDb 10.4

Mensagempor Fernando queiroz » 24 Mar 2020 16:08

Vendo as postagens , a muito tempo eu vou gravando e dando baixa no estoque em tempo de execucao da venda, o pedido fica em aberto ate ser feito o pagamento, se cair a energia ou qualquer outro problema, eu tenho uma rotina de cancelamento do pedido, onde volta o estoque, no meu caso o estoque tem de ficar sempre atualizado pois o outro vendedor depende do estoque atualizado para fazer a sua venda.

tambem so deixo fechar o caixa se nao tiver nenhuma venda com erro(falta de pagamento), como trabalho com caixa centralizado, se nao ouver pagamento o caixa ja sabe , tem de cancelar a venda.
HARBOUR 3.2, HWGUI 2.22 B4, SEFAZCLASS, DBFCDX, PDFClass, LETODBF
Fernando queiroz
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 370
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Rio Branco/acre
Curtiu: 4 vezes
Mens.Curtidas: 10 vezes

Migração de Dbf para MariaDb 10.4

Mensagempor JoséQuintas » 24 Mar 2020 17:02

Itamar M. Lins Jr. escreveu:Ola!Entendi.
Assim é pq vc está usando "fila indiana".
No caso do atendimento com balcão farmácias e mat. de construção, iria ficar cheio de pedidos sem confirmação e orçamentos..


Realmente.
No meu caso não tem atendimento direto a consumidor final, então orçamento/pedido pendente acaba sendo mais eventual.
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: 13204
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 828 vezes

Migração de Dbf para MariaDb 10.4

Mensagempor Fernando queiroz » 24 Mar 2020 19:43

Mantendo a migração do tema, descobri um recurso muito interessante

Após a inclusao de um dado com chave AUTO INCREMENT posso em seguida usar a chave inserida e fazer um UPDATE em uma chave de mesmo valor tipo VARCHAR ( com isso posso ainda utilizar as velhas chaves tipo texto ate migrar tudo)

oQuery := oServer:Execute(cQuery1+cQuery2)
      
oQuery := oServer:Execute("SELECT LAST_INSERT_ID()")

com essa função ele retorna o valor do ultimo INSERT que voce fez

MEMVAR->UCLIENTE := oQuery:Fields( "LAST_INSERT_ID()" ):Value
      
cQuery   :="UPDATE CLIENTES SET CLIENTES_UCLIENTE = '" + STRZERO(MEMVAR->UCLIENTE,6,0) + "' WHERE CLIENTES_Id = '" + LTRIM(STR(MEMVAR->UCLIENTE)) + "'"

oQuery := oServer:Execute(cQuery)


https://mariadb.com/kb/en/last_insert_id/
HARBOUR 3.2, HWGUI 2.22 B4, SEFAZCLASS, DBFCDX, PDFClass, LETODBF
Fernando queiroz
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 370
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Rio Branco/acre
Curtiu: 4 vezes
Mens.Curtidas: 10 vezes

Migração de Dbf para MariaDb 10.4

Mensagempor JoséQuintas » 25 Mar 2020 08:36

Talvez interesse esta, que é o que uso:

No DBF é caractere, mas no MySQL é numérico.
Uso mesmos campos pra atualizar DBF e MySQL, então....

No MySQL ACEITA:

SET CHAVE = '000010'

E no DBF:
REPLACE CHAVE WITH "000010"

Desta forma, uso a mesma string pra atualizar DBF e MySQL

E também uso esse recurso de incremental.

METHOD QueryExecuteInsert( cTable, lIgnore ) CLASS ADOClass

   LOCAL oField, cSQL, Rs, nValue

   hb_Default( @lIgnore, ! SQL_INSERTIGNORE )
   cSQL := "INSERT " + iif( lIgnore, "IGNORE ", "" ) + "INTO " + cTable + " ( "

   FOR EACH oField IN ::aQueryList
      cSQL += oField[ 1 ]
      IF ! oField:__EnumIsLast
         cSQL += ", "
      ENDIF
   NEXT
   cSQL += " ) VALUES ( "
   FOR EACH oField in ::aQueryList
      cSQL += ValueSQL( oField[ 2 ] )
      IF ! oField:__EnumIsLast
         cSQL += ", "
      ENDIF
   NEXT
   cSQL += " )"
   ::ExecuteCmd( cSQL )
   Rs := ::ExecuteCmd( "SELECT LAST_INSERT_ID()" )
   nValue := Rs:Fields( 0 ):Value
   IF ValType( nValue ) == NIL
      nValue := 1
   ENDIF
   Rs:Close()

   RETURN nValue


Basicamente:

:QueryCreate()
:QueryAdd( "NOME", cNome )
:QueryAdd( "ENDERECO", cEndereco )
:QueryAdd( "VENDEDOR", StrZero( nVendedor, 6 ) ) // numérico no MySQL
:QueryAdd( "STATUS", StrZero( nStatus, 6 ) ) // numérico no MySQL
nIdCliente := :QueryExecuteInsert( "CLIENTES" )

:QueryAdd( "IDCLIENTE", StrZero( mIdCliente, 6 ) )
:DBFQueryExecuteInsert() // grava no DBF usando mesmo array, adicionado o código obtido do mysql
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: 13204
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 828 vezes

Migração de Dbf para MariaDb 10.4

Mensagempor Abel » 20 Mai 2020 21:29

muito boa noite pessoal

mudei meu sistema do clipper para harbour, mas continuo usando dbf e indices CDX,
e algumas vezes precisamos reindexar o sistema etc,, alem de uma lentidao no acesso
via rede para DBF grandes.

quando olho os post aqui, letodbf, mariadbf, sql, fico ate confuso com tanta informação,
e qual delas seria a melhor opção custo beneficio de tempo x investimento para eu aprender
e tentar melhorar a performance dos meus sistemas. (dbf x cdx).
se alguem puder compartilhar alguma mudança feita com satisfaçao e um passo a passo para
eu entender melhor, agradeço.

Att
ABEL
Abel
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 259
Data de registro: 14 Mar 2012 13:16
Cidade/Estado: sao paulo / sp
Curtiu: 1 vez
Mens.Curtidas: 1 vez

Migração de Dbf para MariaDb 10.4

Mensagempor Fernando queiroz » 21 Mai 2020 13:10

Abel escreveu:muito boa noite pessoal

mudei meu sistema do clipper para harbour, mas continuo usando dbf e indices CDX,
e algumas vezes precisamos reindexar o sistema etc,, alem de uma lentidao no acesso
via rede para DBF grandes.

quando olho os post aqui, letodbf, mariadbf, sql, fico ate confuso com tanta informação,
e qual delas seria a melhor opção custo beneficio de tempo x investimento para eu aprender
e tentar melhorar a performance dos meus sistemas. (dbf x cdx).
se alguem puder compartilhar alguma mudança feita com satisfaçao e um passo a passo para
eu entender melhor, agradeço.

Att
ABEL


ABEL se você quiser sair rápido do .DBF /.CDX vai para o LETODBF porque a migração será bem mais rápida, após isso você pode ir para o MARIADB
pois a curva de aprendizado é muito rápida, já passei pelos dois processo.

usei o LETODBF para melhorar a segurança nos dados do .DBF
agora estou migrando tudo para MARIADB ( é fenomenal )

se precisar de dicas disponha
HARBOUR 3.2, HWGUI 2.22 B4, SEFAZCLASS, DBFCDX, PDFClass, LETODBF
Fernando queiroz
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 370
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Rio Branco/acre
Curtiu: 4 vezes
Mens.Curtidas: 10 vezes

Migração de Dbf para MariaDb 10.4

Mensagempor rossine » 22 Mai 2020 14:10

Boa tarde Fernando,

ABEL se você quiser sair rápido do .DBF /.CDX vai para o LETODBF porque a migração será bem mais rápida, após isso você pode ir para o MARIADB
pois a curva de aprendizado é muito rápida, já passei pelos dois processo.

usei o LETODBF para melhorar a segurança nos dados do .DBF
agora estou migrando tudo para MARIADB ( é fenomenal )

se precisar de dicas disponha


Um tempo atrás eu andei fazendo uns testes com o LetoDBF e realmente é muito bom, mas como usando ele eu poderia estar "encurtando" o caminho para o SQL ?

Obrigado,
Rossine.

Harbour 3.4, MingW / Msvc, QT, Qt5xhb, GtQtc, DbfCdx, MySql/MariaDB.
rossine
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 246
Data de registro: 06 Ago 2007 09:57
Cidade/Estado: Divinópolis-MG
Curtiu: 0 vez
Mens.Curtidas: 17 vezes

Migração de Dbf para MariaDb 10.4

Mensagempor Fernando queiroz » 22 Mai 2020 20:30

Um tempo atrás eu andei fazendo uns testes com o LetoDBF e realmente é muito bom, mas como usando ele eu poderia estar "encurtando" o caminho para o SQL ?

Obrigado,


O encurtamento seria em função da segurança dos dados, pois ele ficaria em um servidor sem pasta compartilhada, e teria menos dados corrompidos

dando tempo para migrar para o MARIADB
HARBOUR 3.2, HWGUI 2.22 B4, SEFAZCLASS, DBFCDX, PDFClass, LETODBF
Fernando queiroz
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 370
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Rio Branco/acre
Curtiu: 4 vezes
Mens.Curtidas: 10 vezes

Migração de Dbf para MariaDb 10.4

Mensagempor Abel » 22 Mai 2020 21:58

Valeu pela dica, Fernando queiroz

vou fazer umas pesquisas para ver por onde inicio
meu aprendizado para letodbf

qualquer coisa, posto aqui algumas duvidas.

Obrigado, Abel
Abel
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 259
Data de registro: 14 Mar 2012 13:16
Cidade/Estado: sao paulo / sp
Curtiu: 1 vez
Mens.Curtidas: 1 vez

Migração de Dbf para MariaDb 10.4

Mensagempor rossine » 24 Mai 2020 10:43

Bom dia Fernando,

O encurtamento seria em função da segurança dos dados, pois ele ficaria em um servidor sem pasta compartilhada, e teria menos dados corrompidos

dando tempo para migrar para o MARIADB


Sim isto no LetoDBF é muito interessante.

O ideal se no LetoDBF tivesse como usar sentenças SQL para acessar os DBF's, aí sim facilitaria a migração para SQL futuramente.
Rossine.

Harbour 3.4, MingW / Msvc, QT, Qt5xhb, GtQtc, DbfCdx, MySql/MariaDB.
rossine
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 246
Data de registro: 06 Ago 2007 09:57
Cidade/Estado: Divinópolis-MG
Curtiu: 0 vez
Mens.Curtidas: 17 vezes

Anterior



Retornar para Banco de Dados

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