Je cherche simplement une requête simple pour sélectionner tous les noms de table pour un schéma donné. Par exemple, notre DB a plus de 100 tables et j'ai besoin de trouver n'importe quelle table qui contient la sous-chaîne "CUR". Je peux utiliser la commande like une fois que j'ai toutes les tables.DB2 Requête pour récupérer tous les noms de table pour un schéma donné
Répondre
select * from sysibm.systables
where owner = 'SCHEMA'
and name like '%CUR%'
and type = 'T';
Cela vous donnera toutes les tables avec CUR
en eux dans le schéma SCHEMA
. Pour plus de détails sur le tableau SYSIBM.SYSTABLES
, voir here pour plus de détails. Si vous regardez le volet de navigation à gauche, vous pouvez obtenir toutes sortes de merveilleuses méta-données DB2.
Notez que ce lien est pour le mainframe DB2/z. DB2/LUW (Linux/UNIX/Windows) a des colonnes légèrement différentes. Pour cela, je crois que vous voulez la colonne CREATOR
.
Dans tous les cas, vous devez examiner les documents IBM pour votre variante spécifique. Le nom de la table ne sera certainement pas changer cependant, il suffit de rechercher SYSIBM.SYSTABLES
pour les détails.
Cela devrait fonctionner:
select * from syscat.tables
DB2 LIST TABLES FOR SCHEMA <schema_name>
cette option a l'avantage d'être insensible à la casse. – Brannon
select name from sysibm.systables
where name like '%ISP%'
and type = 'T'
Essayez ceci:
select TABNAME from syscat.tables where tabschema = 'yourschemaname'";
Vous pouvez également obtenir les noms de table en tapant simplement TABLES LIST dans DB2
Ce n'est pas vrai. 'LIST TABLES' donne 0 tables pour moi. Tandis que 'LISTE TABLES SCHEMAX'résiste dans les 796 tables de ce schéma. Par conséquent, "LIST TABLES" ne montre pas nécessairement toutes les tables. – schneiti
En utilisant les commandes DB2 (pas de SQL) il y a le possibi lité d'exécution
db2 LIST TABLES FOR ALL
Ceci affiche toutes les tables de tous les schémas de la base de données.
Cela est très pratique si vous ne connaissez pas le schéma que vous recherchez, ou si vous souhaitez afficher une liste de toutes les tables de votre base de données dans un fichier. 'db2" liste les tables pour tout "> tables.txt' – bonh
C'est ce que je voulais! Merci! –
Sur mon iSeries je dois exécuter cette commande à partir iNavigator:
select *
from QSYS2.SYSTABLES
where TABLE_SCHEMA
like 'SCHEMA_NAME'
and TYPE = 'T';
db2 connect to MY_INSTACE_DB with myuser -- connect to db2
db2 "select TABNAME from syscat.tables where tabschema = 'mySchema' with ur"
db2 terminate -- end connection
SELECT
name
FROM
SYSIBM.SYSTABLES
WHERE
type = 'T'
AND
creator = 'MySchema'
AND
name LIKE 'book_%';
Il n'y a pas de grande différence dans la différence données.Système Major est la colonne ordre Dans les tables de liste, la colonne du schéma sera placée après la colonne table/vue Dans les tables de liste, afficher les détails La colonne de schéma sera après le type de colonne
- 1. requête pour obtenir tous les noms de table
- 2. Sur quelle table/vue recherchez-vous pour sélectionner tous les noms de table dans un schéma Oracle?
- 3. Pour créer un script SQL pour générer le schéma de table avec des données pour une table DB2
- 4. DB2 Requête pour Hibernate Criteria
- 5. requête pour récupérer les noms des noeuds du groupe
- 6. Requête pour sélectionner tous les noms de table qui n'ont pas leur nom en majuscules
- 7. requête DB2 pour extraire la valeur clob
- 8. Requête SQL pour tronquer la table dans IBM DB2
- 9. quelle pourrait être la requête pour récupérer tous les enregistrements séparés par des virgules dans SQL?
- 10. Obtention du schéma pour une table
- 11. requête SQL pour les noms Dernières Apostrophes
- 12. PHP: récupérer tous les espaces de noms déclarés d'un DOMElement
- 13. requête difficile (DB2)
- 14. Requête base de données pour récupérer un tableau
- 15. Requête SQL pour rechercher le schéma de toutes les tables
- 16. Requête simple dans DB2 pour AS400
- 17. Rechercher tous les articles de blog créés pour un jour donné
- 18. requête MySQL pour tous les termes de recherche dans l'index
- 19. Définir les noms de table pour les résultats de plusieurs SQL sélectionne dans une seule requête
- 20. requête MySQL pour obtenir tous les éléments et la suppression d'un élément basé sur un critère
- 21. Récupérer tous les messages où un utilisateur donné a fait un commentaire, Ruby on Rails
- 22. Comment déterminer si tous les objets sont sérialisables dans un espace de noms donné?
- 23. chercher les noms de colonnes pour la table spécifique
- 24. Utilisation de DbConnection.GetSchema() pour récupérer tous les dbs système sauf
- 25. Requête SQL pour un schéma de base de données
- 26. Requête SQL Server pour trouver tous les noms de base de données en cours
- 27. requête SQL pour obtenir le dernier enregistrement pour tous les articles distincts dans une table
- 28. Comment obtenir tous les noms de fichier dans un répertoire donné
- 29. "pour chaque" ou "tous" les mots-clés du schéma
- 30. SQL Server - Pour obtenir tous les noms de serveur connectés
'SQL0206N" OWNER "n'est pas valide dans le contexte où il est utilisé. SQLSTATE = 42703' –
@Marius, vous pouvez avoir un schéma différent dans votre variante DB2 - c'était spécifique à DB2/z, ce que nous appelons le _real_ DB2 :-) Par exemple, dans DB2/LUW, vous utiliseriez CRÉATEUR. Cela ne change pas la réponse sous-jacente, qui consiste à utiliser 'systables'. – paxdiablo
mon mauvais: J'utilise ** DB2/LUW ** en effet. –