Pergunta

Eu corri função copiar um conjunto de dados em Toad que desativou todas as restrições e depois falhou.

Isso me deixou com um monte de restrições de mobilidade condicionada. A maioria deles eu tenho sido capaz de permitir com sucesso, mas os flashbacks estão dando meus ataques Proc.

Perguntas:

1) É necessário reativar as restrições sobre as mesas de flashback? Minha suposição é que se eles não estão habilitados e de flashback é usado, que seria desativado quando a tabela é restaurado, então sim, eles devem ser habilitados para re.

2) O erro que eu vejo é ORA-01735:. Opção de tabela alter inválido

EXECUTE IMMEDIATE
'ALTER TABLE'||' '||l_table_name||' '||'ENABLE CONSTRAINT'||'
'||l_Constraint_name;

A minha suposição é que o ==$0 no nome da tabela está causando problemas, e eu preciso colocá-lo entre aspas. No entanto, minhas tentativas de fazê-lo:

EXECUTE IMMEDIATE
'ALTER TABLE'||' ""'||l_table_name||'"" '||'ENABLE CONSTRAINT'||'
'||l_Constraint_name;

também falhou. Qual é a sintaxe apropriada? Ou eu sou latindo para a árvore errada sobre o que o erro realmente é?

Foi útil?

Solução

Como sobre: ??

EXECUTE IMMEDIATE 
'ALTER TABLE'||' ""'||l_table_name||'"" '||'ENABLE CONSTRAINT'||' 
"'||l_Constraint_name||'"';
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top