Maison >base de données >tutoriel mysql >Comment récupérer les noms de colonnes d'une table Oracle?
Comment récupérer les noms de colonnes d'une table Oracle ?
Dans Oracle 11g et versions ultérieures, vous pouvez utiliser la table USER_TAB_COLS
pour obtenir les noms de colonnes des tables appartenant à l'utilisateur actuel. Pour les tables appartenant à tous les utilisateurs, utilisez les tables ALL_TAB_COLS
ou DBA_TAB_COLS
.
Exemple de requête
Pour exclure certaines colonnes et spécifier un schéma pour la table 'users', vous pouvez utiliser la requête suivante :
<code class="language-sql">SELECT column_name FROM all_tab_cols WHERE table_name = 'USERS' AND owner = '<schema_name>' AND column_name NOT IN ('PASSWORD', 'VERSION', 'ID')</code>
Remarque : Les noms de tables et de colonnes sont généralement représentés en majuscules dans Oracle, assurez-vous également d'utiliser des majuscules dans vos requêtes.
Espace table et schéma
Dans Oracle, les tablespaces et les schémas ne sont pas équivalents. Un tablespace fait référence à l'emplacement de stockage physique des tables, tandis qu'un schéma est un regroupement logique d'objets de base de données appartenant à un utilisateur ou à un rôle. Par conséquent, vous n'avez pas besoin de spécifier le nom du tablespace dans la requête.
Équivalent HQL générique
La requête Oracle ci-dessus n'a pas d'équivalent HQL direct. Cependant, vous pouvez utiliser les annotations TableSchema
et TableColumn
dans JPA pour spécifier le modèle et les colonnes à exclure.
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!