O SQLDataTransfer é uma ferramenta para Cópia de Dados SQL Server, que foi desenvolvida para auxiliar na geração de arquivos e cópia eficiente de dados entre bases de dados SQL Server. Todo o processameno é otimizado utilizando BulkCopy, o que significa que as tabelas de origem e destino precisam ter a mesma estrutura de dados.
Com a interface gráfica (GUI) permite que os usuários selecionem as tabelas que desejam copiar apenas clicando nelas, o que torna a ferramenta mais intuitiva e fácil de usar.
Além disso, a opção de linha de comando oferece flexibilidade adicional, permitindo aos usuários especificar o que deve ser copiado através do arquivo de configuração do aplicativo (app.config). Isso inclui a possibilidade de determinar quais registros devem ser copiados usando scripts SQL e cópiar da origem para arquivos csv como destino.
Essa abordagem híbrida, combinando a interface gráfica e a linha de comando, é ótima, pois atende a diferentes necessidades e preferências dos usuários. Alguns usuários podem preferir a simplicidade da GUI, enquanto outros podem preferir a flexibilidade e o controle da linha de comando.
Com essa ferramenta, os usuários poderão copiar dados entre bases de dados SQL Server de maneira mais eficiente, aproveitando a funcionalidade de bulk e facilitando o processo de migração, sincronização ou backup de dados.
- Cópia otimizada de dados entre bases de dados SQL Server.
- Interface gráfica intuitiva para seleção de tabelas a serem copiadas.
- Suporte para cópia personalizada usando linha de comando e scripts SQL.
- Utilização do arquivo de configuração (app.config) para determinar o que deve ser copiado.
- Propriedades de configuração durante a copia como:
- Ativar/Desativar constrainsts durante a copia
- Ativar/Desativar bloqueio da tabela de origem durante a cópia
- Ativar/Desativar disparo de triggers nas tabelas de destino
- Opção de truncate na tabela de destino, antes de inicar a cópia
- Execute o arquivo executável da ferramenta.
- Na interface gráfica, informe as conexões de base e selecione as tabelas que deseja copiar.
- Clique no botão "Copy" para iniciar o processo de cópia de dados.
- Acompanhe o progresso da cópia na interface gráfica e aguarde a conclusão.
- Um log de resultado é apresentado durante todo o processo de cópia
- Abra o arquivo de configuração (app.config) no local onde o executável está localizado.
- Edite o arquivo de configuração para definir quais registros devem ser copiados usando scripts SQL.
- Execute o arquivo executável da ferramenta a partir da linha de comando.
- Aguarde o processo de cópia de dados ser concluído e verifique o resultado.
-- ou --
- Arquivo de Config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="transferSection" type="SQLDataTransfer.CLI.Configuration.TransferSection, SQLDataTransfer.CLI"/>
</configSections>
<transferSection>
<transfers>
<add name="LOCAL" disabled="false"
connectionSource="Data Source=NB-TOPONE\SQLEXPRESS;Initial Catalog=DB_IDE;Integrated Security=SSPI;Persist Security Info=False;"
connectionTarget="Data Source=NB-TOPONE\SQLEXPRESS;Initial Catalog=DB_IDE_DEV;Integrated Security=SSPI;Persist Security Info=False;"
bulkCopyTimeout="18000"
bulkBatchSize="20000"
tableLock="true"
checkConstraints="false"
fireTriggers="false">
<tables>
<add name="dbo.TB_USUARIO" truncate="true" updateStatistics="true"/>
<add name="dbo.TB_REGIAO" truncate="true" updateStatistics="true"/>
<add name="dbo.TB_UF" truncate="true" updateStatistics="true"/>
<add name="dbo.TB_CIDADE" truncate="true" updateStatistics="true"/>
</tables>
</add>
<add name="HL_HOMOLOG" disabled="true"
connectionSource="Data Source=SERV_PROD;Initial Catalog=DB_CAS;Persist Security Info=True;User ID=sa; Password=sa;"
connectionTarget="Data Source=SERV_HML;Initial Catalog=DB_CAS;Persist Security Info=True;User ID=sa; Password=sa;"
bulkCopyTimeout="18000"
bulkBatchSize="20000"
tableLock="true"
checkConstraints="false"
fireTriggers="false">
<tables>
<add name="dbo.TB_OPERACAO"/>
<add name="TB_CLIENTE" selectSource="Scripts\TB_CLIENTE.SQL" updateStatistics="true"/>
<add name="TB_COTACAO_DIA" updateStatistics="true" truncate="true"/>
<add name="TB_GRUPO_ECONOMICO" toCsvFile="Extracao\dbo.TB_GRUPO_ECONOMICO_{DateTime}.csv"/>
<add name="SpaceUsed" selectSource="Scripts\SpaceUsed.sql" toCsvFile="Extracao\{Date}_SpaceUsed_{Time}.csv"/>
</tables>
</add>
</transfers>
</transferSection>
</configuration>
Você pode contribuir para o desenvolvimento do ResizeIt.
- ⭐ Dando uma estrela neste repositório (isso é muito importante e não custa nada)
- 🪲 Relatando problemas ou solitando recursos (Issues)
- 💻 Enviando solicitações de recursos (Pull Requests)
- 📄 Melhorando esta documentação
- 🚨 Compartilhando este projeto e recomendando-o aos seus amigos
- 💵 Apoiando este projeto no GitHub Sponsors, PayPal, Ko-fi ou Liberapay (você decide) 😉
Se você aprecia isso, considere doar para o desenvolvedor.
O SQLDataTransfer é distribuído sob a licença MIT. Consulte o arquivo LICENSE
para obter mais informações.
MIT © Heliomar P. Marques 🔝
Agradeço por utilizar este software. Espero que ele seja útil e facilite suas tarefas de cópia de dados.
Se tiver alguma dúvida ou sugestão, não hesite em perguntar.