Bonsoir,
Je me demandais s'il existait une fonction mysql permettant de vider un enregistrement (ormis l'id ou quelques autres champs de notre choix). Ca doit sûrement exister non?
Merci de m'épauler.
Votre fidèle.
Bonsoir,
Je me demandais s'il existait une fonction mysql permettant de vider un enregistrement (ormis l'id ou quelques autres champs de notre choix). Ca doit sûrement exister non?
Merci de m'épauler.
Votre fidèle.
en standard :
en MySQL :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 UPDATE table SET col1 = NULL, col2 = NULL, col3 = NULL... WHERE ID = 6
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 REPLACE INTO table (ID) VALUES (6)
Précision sur la réponse d'Antoun :
La commande Replace créée un enregistrement si elle ne trouve pas de clé primaire pour l'identifiant donné dans la clause values. Ceci pourrait avoir des effets non désirés.
tgut à fait juste ! s'il y a besoin de blinder ce point-là, voici une bidouille à tester :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 REPLACE INTO TABLE (ID) SELECT 6 FROM TABLE WHERE ID = 6
Merci beaucoup, mais dans tous les cas, que ce soit pour UPDATE ou pour REPLACE il faut donner une valeur pour chaque champs, pas de fonction automatique donc, du genre:
Imaginons que latable contienne 200 champs, cette fonction serait la bienvenue
Code : Sélectionner tout - Visualiser dans une fenêtre à part REPLACE_ALL("") table EXEPT monChampDexeption WHERE monChamp = value
non, c'est l'intérêt de REPLACE INTO, tu ne précises que les colonnes que tu veux garder. Toutes les autres passent à NULL (ou plus exactement à leur valeur par défaut).
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager