Je veux écrire une requête pour obtenir les noms des tables d'une base de données spécifique, mais je ne sais pas comment l'écrire.Obtenir les tables de la base de données
Je souhaite exécuter cette requête pour MS Access 2007 et Oracle 11g.
Merci
Je veux écrire une requête pour obtenir les noms des tables d'une base de données spécifique, mais je ne sais pas comment l'écrire.Obtenir les tables de la base de données
Je souhaite exécuter cette requête pour MS Access 2007 et Oracle 11g.
Merci
Si vous souhaitez des requêtes brutes, directes:
Pour Oracle:
SELECT * FROM user_tables
Pour MS Access:
SELECT * FROM MSysObjects WHERE [Type] In (1, 4, 6)
(tri et le filtrage avancé omis par souci de concision
remercie Paul Sasik. – Farna
Selon le contexte, vous pouvez obtenir une erreur d'autorisations sur la requête MS Access. –
Utilisez-vous une couche d'abstraction de base de données, comme la base de données JDBC ou DBI de Perl? Beaucoup de ces frameworks ont des méthodes pour énumérer les catalogues, schémas et objets d'une base de données (tables, vues, etc.), méthodes qui sont implémentées par des pilotes spécifiques. – pilcrow
Je pense qu'il veut juste dire une requête pour récupérer la liste des tables. –
@AJ, à droite. Cette fonctionnalité existe déjà sans que le codeur ait à se soucier de telle ou telle version de tel ou tel RDBMS (par exemple, $ dbh-> tables() sous DBI). – pilcrow