2010-10-17 3 views
2

Je dois exécuter ce code MySql sur certaines bases de données et je soupçonne que certaines d'entre elles ont déjà cette colonne. Y at-il quelque chose de similaire à if not exists pour le code ci-dessous? Je considère ceci pour éviter d'obtenir l'erreur de colonne dupliquée.Existe-t-il une clause "IF NOT EXISTS" pour l'ajout de colonnes dans MySQL?

+0

vous avez plus d'une table avec le même nom de table (dans une seule DB)? –

+0

Non, je veux juste savoir s'il existe une option pour exclure les sites qui ont une colonne active pour éviter d'avoir une erreur de colonne en double! –

Répondre

2
SELECT COLUMN_NAME 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE table_name = 'tbl_name' 
AND table_schema = 'db_name' 
AND column_name = 'column_name' 

devrait vous donner ce que vous cherchez !!

0

Ou: SELECT COUNT (*) DE INFORMATION_SCHEMA.COLUMNS OU table_name = 'tbl_name' ET table_schema = 'nom_base' ET nom_colonne = 'nom_colonne'

Cela vous donne un 1 ou 0 résultat basé sur l'existence ou non.