- Este tópico contém 6 respostas, 7 vozes e foi atualizado pela última vez 17 anos atrás por
David Siqueira.
-
AutorPosts
-
8 de agosto de 2006 às 11:32 pm #76161
Anônimo
Fui dar um drop em uma tabela e a mesma apresentou o seguinte erro:
“unique/primary keys in table referenced by foreign keys”,
alguém sabe como resolver isso???? essa tabela pode ser dropada???
9 de agosto de 2006 às 1:25 am #76166hteles
Participanteo problema é o seguinte, existem outras tabelas que dependem dessa que vc quer deletar.
tente fazer o seguinte:drop table table_name cascade constraints;
acredito que assim deleta a tabela!
abraços
7 de novembro de 2006 às 2:33 pm #77105drumond
Participantebom se vc quiser saber qual sao as tabelas dependentes antes de apagar ai vai uma query :
select table_name, lower(column_name)
from user_tab_columns
where column_name = UPPER(‘NOME_COLUNA’)3 de março de 2009 às 10:15 pm #85551JamirJr
ParticipantePrecisei excluir alguns registros, mas eles estavam em uso em outras tabelas, então precisei disso:
SELECT ‘select ”’|| A.TABLE_NAME ||”’ from ‘|| A.OWNER ||’.’|| A.TABLE_NAME ||’ where ‘|| COLUMN_NAME ||’ = 12345;’
FROM dba_constraints a, dba_cons_columns b
WHERE a.constraint_name = b.constraint_name
AND r_constraint_name = ‘XPTO_PK’onde 12345 = valor que eu precisava excluir
XPTO = nome da contraint, chave da tabela de onde eu deveria excluir os registros, ex: fornecedor_pk, funcionario_pk, etc
Este select vai me dar varios selects, os quais usam a minha constraint.e depois isso:
SELECT ‘UPDATE ‘|| A.OWNER ||’.’|| A.TABLE_NAME ||’ SET ‘|| COLUMN_NAME ||’ = 12345 WHERE ‘ || COLUMN_NAME || ‘= 54321;’
FROM dba_constraints a, dba_cons_columns b
WHERE a.constraint_name = b.constraint_name
AND r_constraint_name = ‘XPTO_PK’4 de março de 2009 às 3:55 pm #85560Marcio68Almeida
ParticipanteBom…
Quando o banco diz que não pode fazer alguma coisa, neste caso remover uma tabela, é por que existe uma consistência que merece atenção.
Antes de simplesmente remover as consistências, verifique o por que elas existem…Você pode remover a constraint com DROP CONSTRAINT
4 de março de 2009 às 4:35 pm #85566Rodrigo Almeida
ParticipanteExato, como o Marcio disse.
Se existe PK e FKS nas tabelas, porque fazem integridade dos dados e usualmente parte da modelagem dos dados para alguma regra de negócio, então, veja se a tabela não terá impactos no aplicativo e na modelo de dados.
OBS: Se não trazer impactos, DROP TABLE CASCADE CONSTRAINTS; –> funciona que é uma beleza.
Abraços,
Rodrigo Almeida4 de março de 2009 às 5:43 pm #85573David Siqueira
ParticipanteReforçando as orientações do Alphamek e do Marcio, gere um DDL da tabela, exporte os dados como garantia, verifique as dependencias e se estiver tudo ok e sem restrições lasca o DROP que funciona!!!..rs!
Abcs.
David
-
AutorPosts
- Você deve fazer login para responder a este tópico.