2010-01-28 6 views
3

Bonjour, est-ce que quelqu'un sait comment vérifier si un objet DB donné (Table/View/SP/Function) est utilisé dans Oracle? Par exemple, pour vérifier si la table "A" est utilisée dans les définitions SP/Function ou View. J'essaie de nettoyer les objets inutilisés dans la base de données.Vérifiez si un objet DB donné est utilisé dans Oracle?

J'ai essayé la requête select * de all_source O WH TEXTE comme '% A%' (A est le nom de la table). Pensez-vous qu'il est prudent de supposer qu'il n'est pas utilisé s'il ne renvoie aucun résultat?

+1

Question intéressante. Si un objet n'est pas référencé par un autre objet, est-il garanti qu'il ne sert à rien? Savez-vous qu'aucun utilisateur n'essaiera d'utiliser cet objet à l'avenir? Ou voulez-vous seulement conserver les objets référencés par un autre objet? – FrustratedWithFormsDesigner

Répondre

3

De cette ASKTOM question:

Vous devez activer l'audit et puis de revenir en 3 mois pour voir.

Nous ne suivons pas ces informations par défaut - aussi, même avec l'audit, il peut être très possible d'avoir un objet qui est accessible INDIRECTEMENT (par exemple: via une clé étrangère pour exemple) qui ne sera pas arriver.

Vous pouvez essayer USER_DEPENDENCIES mais qui ne vous dira pas sur les objets référencés par le code dans applications client ou via SQL dynamique

Il y a un code dans le fil pour le contrôle ALL_SOURCE, mais il est mis en évidence que ce n » une balle d'argent.

Questions connexes