Maison >base de données >tutoriel mysql >Comment récupérer les noms de tables d'une base de données spécifique à l'aide de SQL ?
Récupérer efficacement les noms de tables de bases de données spécifiques avec SQL
La gestion de plusieurs serveurs de bases de données (par exemple, MySQL, MS SQL Server) nécessite souvent l'extraction d'informations spécifiques sur la base de données. Une tâche fréquente consiste à obtenir une liste de noms de tables à partir d'une base de données désignée.
Pendant que la requête générique :
<code class="language-sql">SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'</code>
récupère toutes les tables de toutes les bases de données d'un serveur, il est souvent nécessaire de limiter les résultats à une seule base de données. La syntaxe SQL précise pour cela varie selon les systèmes de bases de données.
Requêtes spécifiques à la base de données :
Les exemples suivants montrent comment récupérer les noms de tables d'une base de données spécifique :
SQL Serveur :
<code class="language-sql">SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_CATALOG='dbName'</code>
N'oubliez pas de remplacer "dbName"
par le nom de votre base de données cible.
MySQL :
<code class="language-sql">SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_SCHEMA='dbName'</code>
Remplacez "dbName"
par le nom de la base de données souhaitée.
Oracle :
Oracle utilise une approche légèrement différente :
<code class="language-sql">SELECT TABLE_NAME FROM DBA_TABLES WHERE OWNER='dbName'</code>
Ici, "dbName"
représente l'utilisateur de la base de données qui possède les tables. Notez que cette requête nécessite les privilèges appropriés.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!