NEW

 

Script Python para deletar registros antigos do SQL Server com leitura de JSON e geração de log automático.
Script Python para deletar registros antigos do SQL Server com leitura de JSON e geração de log automático.

Manter a base de dados enxuta e saudável é fundamental para a performance de qualquer sistema. Mas, como fazer isso de forma prática, segura e sem precisar mexer em cada detalhe do código a cada nova execução?

Neste artigo, vou te mostrar como criar um script em Python que deleta registros antigos de uma tabela no SQL Server com base em um intervalo de datas, usando um arquivo de configuração .json. E mais: o script gera logs automáticos com a quantidade de registros excluídos — tudo sem complicação!

🧠 Por que automatizar a exclusão de dados?

Com o tempo, bancos de dados crescem demais e começam a apresentar problemas como lentidão nas consultas, travamentos e até erros de sincronização. Ao automatizar a limpeza periódica, você:

  • Melhora o desempenho das consultas;

  • Evita acúmulo de dados desnecessários;

  • Ganha tempo ao não depender de comandos manuais;

  • Cria um processo reversível e seguro (com logs para rastreabilidade).


🛠️ O que esse script Python faz?

  • Lê dados de conexão e intervalo de datas a partir de um arquivo .json;

  • Executa a exclusão de registros com base em uma coluna de data;

  • Gera um log.txt informando data, tabela e número de registros deletados;

  • Roda de forma simples e reutilizável para diferentes tabelas ou datas.


📁 Estrutura do Projeto

bash

/limpador_sql/ │ ├── main.py # Script principal ├── configuracao.json # Arquivo com os parâmetros └── log.txt # Registro automático da execução

📦 Exemplo de configuracao.json

json

{ "conexao": { "server": "SEU_SERVIDOR", "database": "SUA_BASE", "username": "SEU_USUARIO", "password": "SUA_SENHA", "driver": "ODBC Driver 17 for SQL Server" }, "consulta": { "tabela": "nome_da_tabela", "coluna_data": "data_criacao", "data_inicio": "2023-01-01", "data_fim": "2023-12-31" } }


Script Python


import pyodbc import json from datetime import datetime def carregar_configuracao(caminho_arquivo): with open(caminho_arquivo, 'r', encoding='utf-8') as f: return json.load(f) def registrar_log(tabela, qtd_linhas, data_inicio, data_fim): log_entry = ( f"[{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}] " f"Tabela: {tabela} | Linhas deletadas: {qtd_linhas} | " f"Período: {data_inicio} até {data_fim}\n" ) with open("log.txt", "a", encoding="utf-8") as log_file: log_file.write(log_entry) def deletar_registros(config): conn_info = config['conexao'] consulta = config['consulta'] server = conn_info['server'] database = conn_info['database'] username = conn_info['username'] password = conn_info['password'] driver = conn_info['driver'] tabela = consulta['tabela'] coluna_data = consulta['coluna_data'] data_inicio = consulta['data_inicio'] data_fim = consulta['data_fim'] dt_inicio = datetime.strptime(data_inicio, "%Y-%m-%d") dt_fim = datetime.strptime(data_fim, "%Y-%m-%d") conn_str = f"""DRIVER={{{driver}}}; SERVER={server}; DATABASE={database}; UID={username}; PWD={password}""" try: conn = pyodbc.connect(conn_str) cursor = conn.cursor() query = f""" DELETE FROM {tabela} WHERE {coluna_data} >= ? AND {coluna_data} <= ? """ cursor.execute(query, dt_inicio, dt_fim) qtd = cursor.rowcount conn.commit() print(f"[OK] {qtd} registros deletados da tabela '{tabela}'.") registrar_log(tabela, qtd, data_inicio, data_fim) except Exception as e: print(f"[ERRO] Falha ao deletar registros: {e}") registrar_log(tabela, "ERRO", data_inicio, data_fim) finally: if 'cursor' in locals(): cursor.close() if 'conn' in locals(): conn.close() if __name__ == "__main__": config = carregar_configuracao("configuracao.json") deletar_registros(config)

Basta alterar as datas e o nome da tabela no .json e rodar o script novamente. Isso evita alterações diretas no código!


🔥 Como executar o script

Com Python e a biblioteca pyodbc instalados, digite no terminal:

bash

python main.py

E pronto! Os registros serão apagados e você verá algo como:

csharp

[OK] 1.243 registros deletados da tabela 'pedidos'.

E o arquivo log.txt será automaticamente atualizado:

yaml

[2025-06-27 22:15:38] Tabela: pedidos | Linhas deletadas: 1243 | Período: 2023-01-01 até 2023-12-31


✅ Benefícios dessa abordagem

  • Modularidade: separação entre código e configuração.

  • Segurança: nenhuma informação sensível exposta no script.

  • Controle: log detalhado de todas as execuções.

  • Facilidade: qualquer um da equipe pode rodar o script apenas atualizando o .json.


📌 Dica extra: agende a execução!

Se quiser que o script rode automaticamente todo mês, por exemplo, basta configurá-lo no Agendador de Tarefas do Windows ou usar o cron no Linux.


🧩 O próximo passo?

Se quiser ir além, você pode:

  • Exportar os registros deletados para um backup .csv antes da exclusão;

  • Adicionar múltiplas tabelas ao JSON;

  • Criar uma interface simples com data de início/fim para qualquer usuário executar.


💬 Conclusão

Automatizar a limpeza do banco de dados com Python é uma solução inteligente, segura e escalável. E o melhor: você pode reutilizar o mesmo script com diferentes tabelas e datas, apenas trocando o conteúdo do arquivo de configuração.

Gostou da ideia? Que tal começar agora mesmo a aplicar essa solução no seu ambiente?

🐍 Como Automatizar a Limpeza de Registros no SQL Server com Python e JSON (Com Log)

Leia mais

Como criar pendrive bootável Windows 10 no celular Android usando Ventoy e pendrive OTG sem precisar de computador
Passo a passo para criar pendrive bootável com Windows 10 no celular Android com Ventoy, pendrive OTG SanDisk e sem usar PC

 Você não tem um computador disponível e precisa criar um pendrive bootável com Windows 10? Sem problema! Neste guia, vou te mostrar como fazer isso usando apenas seu celular Android, sem precisar de PC, de forma simples, rápida e funcional.

💡 DICA: Neste tutorial, além do tradicional uso de cabo OTG, também ensino como fazer usando um pendrive com conexão OTG, como o SanDisk 64GB Ultra Dual Drive Luxe Metal, que usei no meu próprio processo e funciona perfeitamente!

 

🚀 O Que Você Vai Precisar?

  • ✔️ Celular Android (qualquer modelo com suporte a OTG).

  • ✔️ Pendrive com conexão OTG (ex.: SanDisk Ultra Dual Drive Luxe Metal 64GB), ou um pendrive comum + cabo OTG.

  • ✔️ Arquivo ISO do Windows 10, salvo no seu celular.

  • ✔️ App Ventoy, disponível na Play Store.


⚠️ Atenção! Aviso Importante Antes de Começar

  • 🛑 Todo o conteúdo do pendrive será apagado. Faça backup antes.

  • 🛑 Procedimento 100% funcional, mas requer atenção nos passos. Não nos responsabilizamos por qualquer erro ou perda de dados.

  • 🛑 Este tutorial tem caráter educativo, feito para ajudar quem está sem acesso a um computador.


🔧 Passo a Passo para Criar um Pendrive Bootável Windows 10 Usando Apenas o Celular


1. Baixe e Instale o App Ventoy

  • Abra a Play Store.

  • Procure por “Ventoy” (desenvolvedor MixApplications).

  • Instale o app normalmente.


2. Conecte o Pendrive no Celular

  • Se estiver usando um pendrive OTG, como o SanDisk Ultra Dual Drive Luxe, é só conectar diretamente na entrada USB-C ou micro USB do celular.

  • Se for um pendrive comum, conecte utilizando um cabo OTG compatível.

  • Abra o app Ventoy e clique em “OK” quando ele pedir permissão para acessar o dispositivo USB.


3. Prepare o Pendrive para Ser Bootável

  • No Ventoy, toque no botão “Instalar”.

  • Isso formatará o pendrive no padrão bootável.

  • Confirme em “OK” nas mensagens que surgirem.

💡 Obs.: O app exibe anúncios que você precisa assistir para liberar alguns processos. Caso o botão de anúncio não funcione, vá em:
Configurações → Rede e Internet → DNS Privado → Desative temporariamente.

 

4. Envie a ISO do Windows 10 para o Pendrive

  • Toque em “Copiar arquivo para USB” no app Ventoy.

  • OK para autorizar.

  • Ele abrirá o gerenciador de arquivos.


5. Selecione o Arquivo ISO do Windows 10

  • Ative o filtro “Arquivos grandes” no canto superior.

  • Localize a ISO do Windows 10 que você já tenha salvo no seu celular.

  • Toque sobre ela para iniciar a transferência para o pendrive.


6. Aguarde o Processo Concluir

  • O app irá configurar o pendrive como bootável e transferir o Windows.

  • Ao finalizar, clique em “OK” para ejetar o dispositivo de forma segura.


🖥️ Próximos Passos: Instalando o Windows 10

  • Conecte o pendrive no PC onde você deseja instalar o Windows.

  • Ligue o computador e pressione a tecla de acesso à BIOS/Boot Menu (geralmente F12, ESC, DEL ou F2, dependendo do fabricante).

  • Escolha o pendrive na lista.

  • Siga o processo normal de instalação do Windows 10.


🎯 FAQ – Perguntas Frequentes

🔹 Funciona só com Windows 10?

❌ Não! Funciona também para Windows 11, 8.1, 7, Linux e outros sistemas.

🔹 Precisa ter root no celular?

❌ Não. Funciona perfeitamente em Android sem root.

🔹 O pendrive precisa ser especial?

✔️ Não necessariamente. Você pode usar:

  • ✔️ Pendrive com conexão OTG, como o SanDisk Ultra Dual Drive Luxe Metal 64GB (altamente recomendado pela praticidade).

  • ✔️ Ou um pendrive comum + um cabo OTG.


💡 Conclusão: Simples, Prático e Funcional!

Criar um pendrive bootável do Windows 10 diretamente pelo seu celular nunca foi tão fácil. Seja com um pendrive OTG moderno ou com um adaptador simples, este método resolve aquele problema de não ter outro computador disponível.

Agora, sempre que você precisar reinstalar, formatar ou reparar um Windows, já sabe como fazer diretamente do seu smartphone Android!

✅ Como Criar um Pen Drive Bootável com Windows 10 Usando Apenas um Celular Android (Sem PC e Sem Complicação!)

Leia mais

Você instalou o Windows depois do Ubuntu e agora não consegue mais acessar seu sistema Linux? Não se desespere! Este problema é muito mais comum do que você imagina e tem solução simples.

Quando você instala o Windows após ter o Ubuntu rodando no seu computador, o sistema da Microsoft "apaga" o gerenciador de boot do Linux (GRUB), fazendo com que apenas o Windows apareça na inicialização. Mas calma - seus arquivos do Ubuntu continuam lá, seguros e intactos!

Por Que Isso Acontece?

O Windows tem o péssimo hábito de sobrescrever o Master Boot Record (MBR) durante sua instalação, eliminando qualquer vestígio do GRUB. É como se ele dissesse: "Agora só eu existo aqui!"

Isso acontece porque:

  • O Windows assume que é o único sistema operacional no computador
  • Ele não reconhece outros gerenciadores de boot
  • A instalação do Windows sempre reescreve o setor de boot


Método 1: Recuperação Usando Live CD/USB do Ubuntu (Mais Fácil)

Opção Gráfica - Para Iniciantes

Esta é a forma mais simples e recomendada para quem não tem muita experiência com terminal:

  1. Prepare sua mídia de boot

    • Insira o CD do Ubuntu ou conecte o pendrive bootável
    • Reinicie o computador
    • Configure a BIOS/UEFI para dar boot pela mídia externa
  2. Entre no sistema live

    • Aguarde o Ubuntu carregar completamente
    • Você estará usando o sistema direto da mídia, sem instalar nada
  3. Use o Boot-Repair (Ferramenta Mágica)

    • Abra o terminal e digite: sudo add-apt-repository ppa:yannubuntu/boot-repair
    • Atualize os repositórios: sudo apt update
    • Instale a ferramenta: sudo apt install boot-repair
    • Execute: boot-repair
  4. Repare automaticamente

    • Clique em "Recommended Repair" (Reparo Recomendado)
    • Aguarde o processo terminar
    • Reinicie o sistema

Pronto! Seu menu de boot duplo voltará a funcionar perfeitamente.

Opção Terminal - Para Usuários Avançados

Se você prefere ter mais controle sobre o processo, o terminal é seu amigo:

  1. Abra o terminal

    • No Ubuntu 20.04+ pressione: Ctrl + Alt + T
    • Ou clique no ícone do Ubuntu e digite "Terminal"
  2. Identifique seu disco

    sudo fdisk -l
    

    Este comando mostrará todos os discos e partições. Procure pela partição onde o Ubuntu está instalado (geralmente algo como /dev/sda1 ou /dev/sdb1).

  3. Reinstale o GRUB

    sudo grub-install /dev/sdX
    

    Substitua X pela letra do seu disco (não o número da partição). Por exemplo: /dev/sda

  4. Atualize a configuração

    sudo update-grub
    
  5. Reinicie

    sudo reboot
    

Dica profissional: Se você não tem certeza de qual é seu disco, use o comando ls -l /dev/disk/by-label/ para ver os rótulos das partições.

Método 2: Usando o CD Alternativo do Ubuntu

Este método é útil quando você tem o CD alternativo (versão texto) do Ubuntu:

  1. Inicie pelo CD alternativo

    • Configure o boot pelo CD
    • Quando aparecer o prompt boot:, digite rescue
  2. Configure idioma e localização

    • Escolha português brasileiro
    • Selecione sua região
    • Configure o teclado ABNT2
  3. Identifique a partição root

    • O sistema mostrará uma lista de partições
    • Selecione aquela onde o Ubuntu está instalado
    • Geralmente será algo como /dev/sda1 ou /dev/sdb2
  4. Execute os comandos de recuperação

    • Siga os mesmos passos do método terminal descritos acima

Dicas Importantes Para Evitar Problemas Futuros

Sempre Instale o Windows Primeiro

A regra de ouro do dual boot é: Windows primeiro, Linux depois. Assim você evita dores de cabeça.

Faça Backup do MBR

Antes de qualquer grande mudança no sistema, faça backup do seu Master Boot Record:

sudo dd if=/dev/sda of=mbr_backup.img bs=512 count=1

Use um Pendrive de Emergência

Mantenha sempre um pendrive bootável do Ubuntu para emergências como esta.

Nosso curso avançado de Linux ensina essas e dezenas de outras técnicas de recuperação e manutenção de sistemas. Ideal para quem quer se tornar um expert em Linux!

Solução de Problemas Comuns

"Não Consigo Ver o Menu do GRUB"

  • Mantenha a tecla Shift pressionada durante a inicialização
  • Isso forçará o aparecimento do menu de boot

"Comando grub-install Retorna Erro"

  • Verifique se você está usando o dispositivo correto (/dev/sda, não /dev/sda1)
  • Certifique-se de que está executando como root (sudo)

"Ubuntu Não Aparece na Lista"

  • Execute sudo update-grub após instalar o GRUB
  • Este comando escaneia todos os sistemas operacionais disponíveis

Quando Buscar Ajuda Professional

Se você tentou todos os métodos e ainda não conseguiu resolver, pode ser que:

  • Sua tabela de partições esteja corrompida
  • O disco tenha problemas físicos
  • Você tenha sistemas com UEFI que requerem procedimentos específicos

Nesses casos, é recomendável procurar ajuda de um profissional ou estudar técnicas mais avançadas de recuperação.

Conclusão

Recuperar o Ubuntu após instalar o Windows é um processo relativamente simples quando você conhece as ferramentas certas. O Boot-Repair é sua melhor opção para uma solução rápida e automatizada, enquanto os comandos manuais oferecem mais controle sobre o processo.

Lembre-se: este tipo de problema é extremamente comum e quase sempre tem solução. Com as técnicas deste guia, você conseguirá voltar a usar seus dois sistemas operacionais sem perder nenhum dado.

A experiência de usar dual boot pode ser incrível quando você domina essas técnicas essenciais. Com o conhecimento certo, você terá o melhor dos dois mundos: a facilidade do Windows quando necessário e o poder infinito do Linux sempre disponível.

Como Recuperar o Ubuntu Após Instalar o Windows: Guia Completo 2025

Leia mais

O Acer Nitro 5 AN515-54 é um notebook popular entre gamers e desenvolvedores, mas sua BIOS vem com várias opções bloqueadas. Neste artigo, exploramos métodos possíveis para acessar menus ocultos e configurações avançadas da BIOS InsydeH2O.

Tela ilustrativa destacando o acesso a menus ocultos da BIOS no notebook Acer Nitro 5 AN515-54, revelando opções avançadas de configuração
Tela ilustrativa destacando o acesso a menus ocultos da BIOS no notebook Acer Nitro 5 AN515-54, revelando opções avançadas de configuração


Aviso Importante

As informações a seguir são destinadas a usuários experientes que desejam explorar opções avançadas de configuração na BIOS do notebook Acer Nitro 5 modelo AN515-54. Qualquer alteração na BIOS pode resultar em falhas graves, perda de dados ou até mesmo tornar o equipamento inutilizável. Não nos responsabilizamos por quaisquer danos causados pelo uso inadequado destas informações. Prossiga por sua conta e risco.

🔧 Métodos para Acessar Menus Avançados

1. Sequência Fn + Tab (3x)

  • Acesse a BIOS pressionando F2 ao ligar o notebook.

  • Pressione Fn + Tab três vezes.

  • Salve as alterações e reinicie.

  • Este método funciona em outros modelos Nitro (AN515-53, AN515-55), mas ainda não foi comprovado para o AN515-54.

2. Ctrl + S no menu "Main"

  • Dentro do BIOS, navegue até a aba Main.

  • Pressione Ctrl + S para revelar opções adicionais de SATA.

  • Confirmado em modelos com BIOS Insyde Sierra (ex.: AN515-55), mas incerto no AN515-54.

3. Senha de Supervisor

  • Defina uma senha de supervisor na BIOS.

  • Algumas opções antes cinzas podem se tornar editáveis.

  • Atenção: não perca essa senha. Em alguns casos, a BIOS pode ficar bloqueada.

4. BIOS Modificada (Mod BIOS)

  • A comunidade em fóruns como BIOS-Mods está desenvolvendo versões desbloqueadas da BIOS InsydeH2O (rev 5.0).

  • Elas oferecem acesso completo às configurações de CPU, RAM, voltagem, etc.

  • Alto risco: esse processo pode inutilizar o notebook e anula a garantia.


📅 Tabela Resumo

MétodoDescriçãoConfirmação AN515-54
Fn + Tab (3x)Tenta ativar menu avançadoPossível, não confirmado
Ctrl + S na aba MainRevela opções SATANão confirmado
Senha de SupervisorDesbloqueia opções cinzasVaria por BIOS
BIOS ModificadaAcesso total às opções de sistemaRisco altíssimo


⚠️ Recomendações Finais

  • Sempre faça backup da BIOS original antes de qualquer tentativa.

  • Não aplique métodos de outros modelos sem verificar compatibilidade.

  • Se não tem experiência, evite modificar a BIOS.

Nota legal: Este artigo é apenas informativo. Não incentivamos nem garantimos o sucesso dos procedimentos descritos. Todos os riscos são de responsabilidade do usuário.

Desbloqueando Menus Ocultos na BIOS do Acer Nitro 5 AN515-54

Leia mais

Como criar um aplicativo Python para Windows em apenas 1 passo
Aprenda o método mais simples e rápido para transformar seu código Python em um executável de Windows. Um passo certeiro que qualquer iniciante consegue aplicar!

Já imaginou transformar seu script Python em um aplicativo .exe de forma simples e rápida? Neste artigo, vou te mostrar como criar um executável do Windows em apenas 1 passo certeiro, sem complicações. Perfeito para quem deseja distribuir softwares sem exigir que o usuário instale o Python!


🎯 Por que transformar seu script Python em EXE?

  • 🔧 Distribuição fácil e profissional
  • 🧑‍💻 Usuário final não precisa ter Python instalado
  • 🖥️ Compatível com qualquer PC Windows
  • 💼 Ideal para automações, ferramentas e GUIs


✅ O Passo Certeiro: Usando o PyInstaller

Passo Único: Rode este comando no terminal na pasta onde está seu aplicativo em Python, nosso caso main.py:

pyinstaller --onefile --windowed main.py

Pronto! O executável será criado na pasta dist com o nome main.exe. Você pode rodá-lo em qualquer computador com Windows!

📦 O que esse comando faz:

      --onefile: gera um único arquivo .exe 
      --windowed: oculta o terminal (ideal para aplicativos com interface gráfica)


    💡 Dica Extra: Como instalar o PyInstaller

    Antes de tudo, instale o PyInstaller com este comando:

    pip install pyinstaller

    Você só precisa fazer isso uma vez no seu ambiente Python.


    🛠️ Quer um exemplo prático?

    Imagine que você criou um app com PySimpleGUI para gerar relatórios. Basta usar esse método para entregar um arquivo .exe ao cliente — sem dor de cabeça!


    📌 Conclusão

    Você viu como é possível criar um aplicativo em Python e gerar um executável para Windows com apenas 1 comando certeiro? Essa técnica economiza tempo e leva seu projeto a um novo nível de profissionalismo.

    Curtiu o conteúdo? Compartilhe com outros programadores e deixe seu comentário abaixo! 💬


    ➡️ Continue explorando o Blog do KDS para mais tutoriais como esse!

    🚀 Crie um Aplicativo Python para Windows em 1 Passo Certeiro!

    Leia mais

    Erro Failed to Mount Backup no Ubuntu – Como resolver problema de montagem de HD e SSD no Linux

     

    Você tentou acessar seu HD externo, SSD ou pendrive no Ubuntu e apareceu o erro:

    
    Failed to mount “BACKUP”
    Error mounting /dev/sda1 at /media/usuario/BACKUP: wrong fs type, bad option, bad superblock...

    Fique tranquilo! ✅ Esse problema é comum e na maioria das vezes tem solução rápida.

    🚩 Causas mais comuns:

    • ✗ - HD formatado em NTFS, exFAT ou outro sistema não nativo do Linux

    • ✗ - Sistema de arquivos corrompido

    • ✗ - Erros na tabela de partição

    • ✗ - Conexões USB defeituosas

    🛠️ Passo a Passo Para Resolver

    🔸 1. Verificar o sistema de arquivos:

    Abra o terminal e execute:

    sudo blkid

    ➡️ Identifique se é ntfs, exfat, ext4 ou outro.


    🔸 2. Se for NTFS (Windows):

    Instale o suporte:

    sudo apt update
    sudo apt install ntfs-3g

    Monte manualmente:

    sudo mkdir /mnt/backup
    sudo mount -t ntfs-3g /dev/sda1 /mnt/backup

    🔸 3. Se for exFAT (cartões SD, SSDs modernos, etc.):

    sudo apt install exfat-fuse exfat-utils
    sudo mkdir /mnt/backup
    sudo mount -t exfat /dev/sda1 /mnt/backup


    🔸 4. Reparar erros no NTFS (Windows):

    sudo ntfsfix /dev/sda1

    🔸 5. Se for EXT4 (nativo Linux):

    sudo fsck /dev/sda1

    ➡️ Aceite as correções pressionando y sempre que solicitado.


    📌 Dicas Importantes:

    • Sempre remova seus dispositivos com segurança.

    • Use cabos de boa qualidade.

    • Se o problema persistir, teste em outra porta USB ou outro computador.


    🎯 Conclusão:

    Agora você já sabe como resolver o erro “Failed to Mount Backup” no Ubuntu e garantir que seus dados estejam seguros e acessíveis novamente.

    Agora caso deseje fazer este processo usando uma interface gráfica onde você pode fazer estes passos realizando 03 a 04 cliques, nós informe, mande uma mensagem deixe seu comentário pedido e nós criaremos este tutorial.


    🔗 Leia mais no nosso blog:

    ➡️ Blog do KDSTI – Soluções para Linux e Tecnologia

    Erro "Failed to Mount Backup" no Linux? Veja Como Resolver de Forma Simples!

    Leia mais

    ✝ Copyright © Blog do KDS - Isaías 40:5 “A glória do Senhor se manifestará, e toda a humanidade a verá.”