GS
Cópia de dados entre bancos MySQL e SQLite
Boa tarde.
Gosta de copiar os dados de uma banco MySql em produção para um BD local SQLite.
O problema é que na hora da cópia, tenho acesso apenas a transação do BD MySQL
Alguma luz nesse caso?
Obrigado!
Gosta de copiar os dados de uma banco MySql em produção para um BD local SQLite.
O problema é que na hora da cópia, tenho acesso apenas a transação do BD MySQL
TTransaction::open('bd_online');
e para o BD local preciso abrir outra transação.
Alguma luz nesse caso?
Obrigado!
Gostaria *
Germano, boas
Forma Simples
1 - Abre a Transação do MySql e copia os dados,
2 - Abre a Transação do SQLite e salva os dados,
3 - Fecha as Transações;
Como você vai criar esta rotina ai depende de cada um, pode ser uma foreach (do primeiro para o segundo),
ou dentro dos modelos, ou vc pode criar classes para isso.
O salvar pode ser por registro ou por lote, o que vc achar melhor.
Ai você da asas a sua imaginação.
Tentei fazer o método estático dentro do modelo, mas aparece uma mensagem "SQLSTATE[HY000]: General error: 5 database is locked".
O bloco está finalizado com um TTransaction::close();
Não sei o que acontece
Germano, Boas
Posta o seu código para nos, assim teremos como ver onde esta o erro.
Abraços..
Esse é o método que estou usando para inserir no BD local.
Descobri.
O primeiro RETURN não estava fechando a conexão.
Agradeço a atenção.
Germano, Boas...
1 - Vc esta abrindo 2 vezes a mesma tabela na mesma transação, sem fechar a anterior.
2 - A melhor pratica e antes de você chamar a função InsertLocal fazer todas as certificações fora.
para isso temos aqui no forum uma contribuição que pode te ajudar.
https://www.adianti.com.br/forum/pt/view_1103?tuniquevalidator