Informix SQL - Liste de tous les champs & tables
Informix iSQL a une commande "info tables;
" qui affiche toutes les tables.
La syntaxe pour la visualisation des champs et leurs types de données est "info columns for table;
"
Est-il une commande similaire qui montre le tableau.champ pour toutes les tables et tous les champs?
Si vous avez besoin d'autre chose, d'élargir ou de préciser votre question.
Nope, c'est exactement ce que je voulais et de la personne que je connaissais serait à la hauteur!
+1 pour le travail avec Informix et surtout de la "LEFFLER!!!! À l'AIDE!!!!" 😀 Il est génial! 🙂
Nope, c'est exactement ce que je voulais et de la personne que je connaissais serait à la hauteur!
+1 pour le travail avec Informix et surtout de la "LEFFLER!!!! À l'AIDE!!!!" 😀 Il est génial! 🙂
OriginalL'auteur CheeseConQueso | 2009-09-04
Vous devez vous connecter pour publier un commentaire.
À l'aide de la préféré REJOINDRE la notation:
ou à l'ancienne, rejoignez-en-clause where-notation:
En supposant que vous utilisez suffisamment récente version de ID, vous pouvez commander par des colonnes sont pas cités dans la liste de sélection. Si vous recevez des plaintes, ajoutez l'ordre des colonnes de la liste de sélection.
La jointure critère est évident; le tabtype = " T " uniquement les listes de tables, pas de points de vue, des synonymes et des autres éléments répertoriés dans systables; la tabid >= 100 seulement des listes de tables créées explicitement dans la base de données, pas le catalogue du système.
Ce n'est pas le type de l'information - si vous voulez, vous avez à faire un peu plus de travail. Vous trouverez un fichier
$INFORMIXDIR/etc/xpg4_is.sql
qui contient une approximation plus grossière à une ancienne version de la XPG4 (X/Open standard) des Informations de Schéma (d'où le nom de fichier). Là, il y a des fonctions etc pour décoder les informations de type desyscolumns.coltype
etsyscolumns.collength
reconnaissable dans les cordes. Cependant, je soupçonne fortement qu'il ne gère pas les types DISTINCTS, ni d'autres types définis par l'utilisateur. Je serai ravi d'être tort, mais... Si vous ajoutez les parties pertinentes de ce fichier dans votre base de données, vous devriez être en mesure d'obtenir les informations de type trop.Également noter que toutes les INFOS commandes dans ISQL et DB-Accès sont simulées dans le front-end, pas exécuté dans les IDENTIFIANTS du serveur. Fondamentalement, les programmes prennent de la demande et de le convertir en un autre plus complexe instruction SQL. Voir le code dans le fichier
sqlinfo.ec
qui fait partie de SQLCMD (disponible à partir du IIUG Logiciel Archive) pour mon SQLCMD programme gère INFO consolidés. (Remarque: l'INFO de la sortie de SQLCMD est formaté différemment de l'INFO de la sortie de ISQL et DB-Access).Merci pour la mise à jour après la upvote Jonathan!
Si vous voulez savoir le nom de la table lorsque vous connaissez déjà votre nom de colonne, vous pouvez utiliser la même requête avec un where condition que
c.colname ='COLUMNNAME'
OriginalL'auteur Jonathan Leffler
Utilisation syscolumns table. Ces informations sont décrites dans IBM Informix Guide de SQL
J'ai fait simple en Python utilitaires qui affiche des informations de schéma pour Informix, Oracle et PostgreSQL. Ils sont utiles si vous devez comparer les bases de données.
OriginalL'auteur Michał Niklas
Que Jonathan Leffer la réponse mentionne, un programme complet de types de colonnes, et les détails de colonne devient compliqué comme on peut le voir dans le SYSCOLUMNS de la documentation. Mais si vous êtes à la recherche à la base de données n'utilisant pas plus compliqué types, cet ajout à son script va afficher le type de base et si les valeurs Null sont autorisées:
OriginalL'auteur Stephen Klancher