[RESOLVIDO] ORACLE - problema com relacionamento entre schemas diferentes

tenho o schema ADM a tabela USUARIO_EMPRESA
e no schema PRINCIPAL a tabela EMPRESA

estou tentando o seguinte:

ALTER TABLE ADM.USUARIO_EMPRESA
ADD CONSTRAINT USUARIO_EMPRESA_FK2
FOREIGN KEY (
  COD_EMPRESA
)
REFERENCES PRINCIPAL.EMPRESA (
  CODIGO
) ON DELETE CASCADE ENABLE VALIDATE;

está retornando o erro:

mas se eu faço um select dessa tabela:

traz os registros normalmente, ou seja, a tabela existe!!!

o que pode ser???

Não lembro bem, mas nao tem um esquema de voce setar o schema por uma function do oracle? Acho que depende também do SQL editor do seu client.

detalhe: estou logado com o usuario ADM…
mas adicionei USER PROXY para ADM no usuario PRINCIPAL…

e aí?

e aí pessoal?? ninguém usa oracle???
nem no próprio BOUG eu obtive resposta…

E ai rapaz, não conseguiu a solução?

ainda nao cara…
to convertendo um sistema do postgresql para o oracle
o sistema possui 7 schemas e 170 e poucas tabelas

to dando sequencia aqui na conversão enquanto não consigo fazer os relacionamentos entre schemas!!!

Olá,

Já tentou dar permissão para referenciar o objeto de outro owner?
Caso contrário: GRANT REFERENCES ON PRINCIPAL.EMPRESA TO ADM.USUARIO_EMPRESA;

Até

obrigado Granella…

Segunda no trabalho tentarei e postarei o resultado!!

ok granella… deu certo.

fiz assim: GRANT REFERENCES ON PRINCIPAL.EMPRESA TO ADM

os problemas não acabam por aqui…

o oracle trata string vazia como nula…
ex: se um campo e not null e eu tento inserir aspas simples assim ''
eleencara como null…

ate onde eu estudei, nulo eh nulo, vazio eh vazio!!!

Olá!

Bem vindo ao mundo Oracle :lol: . Trabalho com Oracle já algum tempo e já acostumei com isso.
Tem coisas no Oracle que não é “ANSI compliant”, como isso que acabou de testemunhar. Para o Oracle empty String e null é a mesma coisa, ou melhor, quase a mesma coisa, pois se tentar recuperar um select com condição que não seja IS NULL ele não irá trazer mas nos insert’s e update’s acontece isso, a mesma coisa se tentar recuperar o tamanho do campo com o length ele não ira trazer 0 mas sim null.

Até