🚀 Oferecendo Serviços Remotos de Desenvolvedor AdvPL e Mais 🖥️ Olá pessoal, Espero que este post encontre todos vocês bem! É com grande entusiasmo que compartilho que estou expandindo meus serviços como Desenvolvedor AdvPL para novos desafios e colaborações. Com mais de duas décadas de experiência sólida, minha jornada profissional tem sido enriquecedora, com a oportunidade de participar de projetos empolgantes ao longo dos anos. Agora, estou ansioso para trazer minha experiência e habilidades para novas equipes e projetos, trabalhando de forma remota. Minha expertise abrange não apenas AdvPL, mas também outras tecnologias-chave, incluindo JS, SQL, Infraestrutura e Otimização de Processos. Acredito que essa combinação de conhecimentos me permite oferecer soluções abrangentes e eficazes para uma variedade de necessidades de desenvolvimento. Acredito que a tecnologia tem o poder de transformar negócios e impulsionar o sucesso, e estou comprometido em ajudar meus clientes a alcançar seu
BlackTDN :: MSSQL :: Identificando e Removendo Tabelas Vazias no Ambiente de Teste do Sistema ERP TOTVS Microsiga Protheus
# Identificando e Removendo Tabelas Vazias no Ambiente de Teste do Sistema ERP TOTVS Microsiga Protheus No universo da tecnologia e dos sistemas empresariais, a organização e manutenção de bancos de dados desempenham um papel crucial. O sistema ERP (Enterprise Resource Planning) da TOTVS Microsiga Protheus é uma das principais soluções utilizadas por empresas para gerenciar recursos e informações. Nesse contexto, é fundamental garantir que o banco de dados do Protheus esteja otimizado e livre de informações desnecessárias. Neste artigo, apresentamos um script SQL, para MSSQL, que seleciona todas as tabelas vazias em uma base de teste do sistema ERP da TOTVS Microsiga Protheus e gera instruções para eliminá-las. ```sql -- Este script SQL foi desenvolvido para ambiente de teste. Execute com responsabilidade. WITH t AS ( SELECT t.TABLE_SCHEMA ,t.TABLE_NAME FROM INFORMATION_SCHEMA.TABLES t WHERE SUBSTRING(t.TABLE_NAME, 4, 3) = '990' AND LEFT(t.TABLE_NAME, 3) NOT IN ('SXP', 'SXK', 'SXT', 'SXV') ) SELECT 'DROP TABLE [' + t.TABLE_SCHEMA + '].[' + t.TABLE_NAME + ']' AS QDROP FROM sys.partitions p RIGHT JOIN t ON OBJECT_NAME(OBJECT_ID)=t.TABLE_NAME WHERE OBJECT_NAME(OBJECT_ID)=t.TABLE_NAME AND OBJECTPROPERTY(OBJECT_ID, 'ISUSERTABLE') = 1 AND SUBSTRING(OBJECT_NAME(OBJECT_ID), 4, 3) = '990' AND LEFT(OBJECT_NAME(OBJECT_ID), 3) NOT IN ('SXP', 'SXK', 'SXT', 'SXV') AND SUBSTRING(t.TABLE_NAME, 4, 3) = '990' AND LEFT(t.TABLE_NAME, 3) NOT IN ('SXP', 'SXK', 'SXT', 'SXV') AND p.ROWS = 0 GROUP BY t.TABLE_SCHEMA ,t.TABLE_NAME ORDER BY t.TABLE_NAME ``` *(sys.partitions)* Este script SQL executa uma série de verificações para identificar as tabelas que estão vazias e atendem a critérios específicos. Primeiramente, ele procura por tabelas cujos nomes têm '990' na quarta, quinta e sexta posições, o que pode ser uma convenção no sistema Protheus. Além disso, ele não exclui tabelas que começam com 'SXP', 'SXK', 'SXT', ou 'SXV': presumivelmente tabelas do sistema que não devem ser removidas. Em seguida, a consulta verifica se essas tabelas vazias são realmente tabelas de usuário (não tabelas do sistema) e se possuem zero registros. Se todas essas condições forem atendidas, a consulta gera uma instrução SQL para remover a tabela. Isso facilita o trabalho de administradores de banco de dados e desenvolvedores do sistema Protheus, permitindo-lhes identificar e remover tabelas vazias que não contribuem para o funcionamento eficiente do sistema, liberando recursos e espaço em disco. Lembre-se de que, antes de executar uma instrução `DROP TABLE`, é crucial fazer backup dos dados, realizar testes em um ambiente de teste e garantir que a exclusão da tabela vazia seja realmente segura e desejada. A manutenção adequada do banco de dados é essencial para um desempenho consistente e eficiente do sistema ERP Protheus. ---- *O ChatGPT colaborou com esta publicação*
Comentários
Postar um comentário