Ativar restrição na tabela do Oracle de flashback
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 é?
Solução
Como sobre: ??
EXECUTE IMMEDIATE
'ALTER TABLE'||' ""'||l_table_name||'"" '||'ENABLE CONSTRAINT'||'
"'||l_Constraint_name||'"';