J'ai une liste de noms d'objets à partir desquels je dois savoir si l'objet est une table ou une vue. Pour cette raison, je dois interroger et vérifier all_tables et all_views et confirmer si l'objet est une table ou une vue. J'utilise ci-dessous les requêtes et son fonctionnement. Mais comme j'ai une énorme liste de noms d'objets, je veux effectuer cela en une seule requête et vérifier si l'objet est une table ou une vue et également le propriétaire de l'objet.
select * from ALL_views where view_name like '%INSTANCE%'
select * from all_tables where table_name like '%INSTANCE%'
select *
from all_objects
where object_name like '%INSTANCE%'
Il y a une colonne OBJECT_TYPE dedans.
Que diriez-vous d'utiliser all_objects à la place?
Par exemple.:
select owner,
object_name,
object_type
from all_objects
where object_type in ('TABLE', 'VIEW')
and object_name in (....);