MySQL Forums
Forum List  »  French

Re: Méthode pour réinitialiser les cellules "vide" par leur valeur "Default'
Posted by: Jean Molliné
Date: December 27, 2009 10:31AM

Salut,
directement en SQL, ça pourrait se faire mais à mon avis ce serait peut-être plus compliqué. L'option que je verrais pour ça consisterait en une série de requêtes afin d'automatiser cette mise à jour des tables.

Première étape, lister toutes les tables avec une requête SHOW TABLES;

Seconde étape : À partir du résultat, on boucle et pour chaque table on va lister les colonnes avec une requête DESCRIBE <nom-de-la-table>, nom récupéré dans la liste précédente bien évidemment;

Troisième étape, vérifier quelles colonnes autorisent les valeurs NULL, ce qui exclut les clés primaires. On réduit ainsi la liste des colonnes à mettre à jour pour la table traitée, colonnes qu'on trie avec comme critère de tri NULL == 'Yes';

Dernière étape : mise à jour. On crée une requête dynamique de la forme UPDATE <nom-de-la-table> SET <nom-de-la-colonne> = NULL WHERE <nom-de-la-colonne> = '';

Je serais bien en peine d'écrire ça en VB, mais avec cette description, tu devrais t'en tirer fort bien.

______________________________________________________________
Une question bien formulée, c'est un problème bien compris : ça représente déjà les 3/4 de la réponse ;)

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: Méthode pour réinitialiser les cellules "vide" par leur valeur "Default'
2792
December 27, 2009 10:31AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.