Tempo aproximado para leitura: 00:01:15 min
Dúvida
Como efetuar a atualização de estatísticas para todas as tabelas de um banco de dados Progress Openedge?
Ambiente
Framework - Framework (Linha Datasul) - Progress OpenEdge – Todas as versões
Solução
Este código 4GL é utilizado para gerar um script de atualização das estatísticas de todas as tabelas do banco de dados.
OUTPUT TO "UpdateStatistics.sql".
FOR EACH _File NO-LOCK WHERE _Tbl-Type = "T":
PUT UNFORMATTED "UPDATE TABLE STATISTICS AND INDEX STATISTICS AND ALL COLUMN STATISTICS FOR PUB." _File-Name ";" SKIP.
END.
PUT UNFORMATTED "COMMIT WORK;".
OUTPUT CLOSE.
Será gerado um arquivo de nome UpdateStatistics.sql, o qual deverá ser executado através do aplicativo sqlexp.
A execução de comandos em tabelas com hífen apresenta erro. Por isso, antes de executar o script edite-o e busque por tabelas que contenham hífen no nome. Ex.: Tabela "Order-Line".
Deve-se colocar aspas duplas no nome da tabela, como mostra o exemplo abaixo:
UPDATE TABLE STATISTICS AND INDEX STATISTICS AND ALL COLUMN STATISTICS FOR PUB.Order;
UPDATE TABLE STATISTICS AND INDEX STATISTICS AND ALL COLUMN STATISTICS FOR PUB."Order-Line";
Saiba mais
Informações para a conexão de dados de dados em Framework - Linha Datasul - TEC - Como conectar um banco de dados Progress via SQLEXP
0 Comentários