Rechercher : dans
Par :

[SQL] Tester l'existence d'une colonne

Dernière réponse le 19 mai 2004 à 13:26:29 el gringo, le 18 mai 2004 à 11:57:33 
 Signaler ce message aux modérateurs

Bonjour a tous !

J'aimerais savoir s'il est possible de tester si une colonne existe ou non dans une table.
En gros, j'ai une table qui doit contenir certaines valeurs que je ne connais pas a l'avance. Des qu'un nouveau type de valeur apparait, je dois pouvoir etre en mesure de l'ajouter dans une nouvelle colonne a ma table.

Merci d'avance :-)

Meilleures réponses pour « [SQL] Tester l'existence d'une colonne » dans :
SQL - Modification de table VoirModification de table Il est possible de supprimer une table grâce à la clause DROP, il existe aussi des commandes moins extrêmes permettant L'ajout de colonnes La modification de colonnes La suppression de colonnes Enfin, il est possible...
SQL - Commande SELECT VoirLe langage de manipulation de données Le SQL est à la fois un langage de manipulation de données et un langage de définition de données. Toutefois, la définition de données est l'oeuvre de l'administrateur de la base de données, c'est pourquoi la...
SQL - Jointures VoirExpression des jointures Une jointure (ou θ-jointure) est un produit cartésien de deux tables. On appelle équijointure une θ-jointure dont la qualification est une égalité entre deux colonnes. En SQL, l'expression d'une jointure se...

1

el gringo, le 18 mai 2004 à 14:00:11

Personne n'aurait une idee ? Merci...

Répondre à el gringo

2

sebsauvage, le 18 mai 2004 à 15:42:47

ça dépend des bases de données.

Sous Microsoft SQL Server, c'est la table système syscolumns.

Répondre à sebsauvage

3

el gringo, le 19 mai 2004 à 11:36:26

Salut, et merci pour ta reponse :-)

Je travaille sous PostGreSQL (linux)... et apparamment, y a rien dans l'aide qui permet de le faire... Je commence a douter que ce soit reellemment possible...

J'arrive meme pas a faire un :
ALTER TABLE maTable DROP COLUMN maColonne

Je commence a croire que la version de postgre que j'utilise est assez limitee...

A+

Répondre à el gringo

4

 blux, le 19 mai 2004 à 13:26:29

Salut,

en principe, dans toute base de données qui se respecte, il existe une métabase qui recense l'ensemble des objets du SGBD (tables, colonnes, index, bases...). On appelle également cela les "tables système"

En principe, cette métabase doit être accessible. C'est d'ailleurs la réponse que t'a fait sebsauvage au sujet de SQL server...

Une rapide recherche via Google indique que postgres possède des tables système préfixées par pg_ (pg_database, pg_index, pg_user...) dans un "postgres catalogue", à toi de continuer plus en avant les recherches :-)

Un peu d'aide ici :
www.grappa.univ-lille3.fr/polys/reseaux-2000/reseaux023.html

A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux