J'ai un objet appelé cot_ntn_pi_v
. On m'a dit que c'était un synonyme. Il n'apparaît pas dans la table all_synonym. Cela ressemble à une vue ou une table mais je ne la trouve pas dans la table tous les objets. Je peux le sélectionner, mais je ne peux pas le supprimer car il «n'existe pas» et je ne peux pas créer une nouvelle table avec le même nom que «le nom est déjà utilisé par un autre objet».
Suis-je en train de devenir fou ou de faire quelque chose de vraiment stupide?
Réponses:
Les types d'objets dans le même espace de noms qu'une table sont:
C'est donc probablement l'un de ces types. Si vous pouvez le sélectionner, il exclut les cinq premiers, en le laissant soit une table, une vue, un synonyme privé ou une vue matérialisée.
Lorsque vous avez cherché,
all_objects
etc., vous avez utilisé des majuscules? Par exemple,Si vous utilisez un outil comme SQL Developer ou Toad, vous pouvez le laisser décrire l'objet pour vous. Mettez en surbrillance le nom dans l'outil et appuyez sur
Shift-F4
dans Developer ouF4
dans Toad. Toad fournit beaucoup de description sur l'objet tandis que Developer, dans l'onglet Détails, aura une ligne avecTABLE_NAME
ouMVIEW_NAME
dedans et cela vous montrera de quoi il s'agit.Une fois que vous savez ce que c'est, il sera plus facile de savoir comment le déposer.
la source
Vous ne pourrez peut-être pas voir l'objet dans les tables ALL_% si vous ne disposez d'aucune autorisation sur l'objet lui-même.
Si cela ne produit aucune sortie, vous pouvez archiver les tables du dictionnaire de données Oracle brutes avec cette requête:
la source