...
Cloak |
---|
As versões de DBAccess anteriores a 17.2.1.5, não estavam deletando/removendo as sequences criadas para tabelas temporárias e consequentemente deixando sequences órfãs no SGDB. Para remover as sequences órfãs, execute o procedimento abaixo: - Parar os serviços/processos do DBAccess
- Abrir um client Oracle de sua escolha (sqlplus, isql, Oracle SQL Developer, etc...)
- Conectar na base de dados do Protheus utilizando o mesmo usuário utilizado pelo DBAccess
- Executar o script abaixo através do client conectado a base de dados do Protheus:
sqltrue |
Expandir |
---|
title | 6 - Como remover sequences órfãs no Oracle? |
---|
|
As versões de DBAccess anteriores a 17.2.1.5, não estavam deletando/removendo as sequences criadas para tabelas temporárias e consequentemente deixando sequences órfãs no SGDB.
Para remover as sequences órfãs, execute o procedimento abaixo:
Parar os serviços/processos do DBAccessAbrir um client Oracle de sua escolha (sqlplus, isql, Oracle SQL Developer, etc...)Conectar na base de dados do Protheus utilizando o mesmo usuário utilizado pelo DBAccessExecutar o script abaixo através do client conectado a base de dados do Protheus:
Bloco de código |
---|
language | sql |
---|
linenumbers | true |
---|
|
DECLARE
cStmt VARCHAR(128);
CURSOR c IS SELECT SEQUENCE_NAME FROM ALL_SEQUENCES WHERE SEQUENCE_OWNER = USER AND REGEXP_LIKE(SEQUENCE_NAME, '^T.*_[0-9]+_SEQ');
BEGIN
FOR it IN c
LOOP
cStmt := 'DROP SEQUENCE ' || it.SEQUENCE_NAME;
EXECUTE IMMEDIATE cStmt;
END LOOP;
END; |