Manips mySQL / phpMyadmin

, par jeanmarie

Ajouter des entrées dans une table existante

Associer un mot clef à plusieurs articles

INSERT INTO spip_mots_liens (id_mot, id_objet, objet) VALUES (3, 53, 'article'), (3, 52, 'article'), (3, 50, 'article');

Source http://fr.wikihow.com/cr%C3%A9er-une-table-sous-MySQL

Modifier des entrées dans une table existante

Déplacer l’article n°1 dans la rubrique 5

  1. UPDATE `spip_articles` SET `id_rubrique`="5" WHERE `id_article`=1;

Déplacer tous les articles du secteur 5 dans la rubrique 5 (pour supprimer les sous-rubrique)

  1. UPDATE `spip_articles` SET `id_rubrique`="5" WHERE `id_secteur`=5;

Trouver les documents qui ont plusieurs rôles et n’afficher que ceux sans rôle

SELECT * FROM spip_documents_liens
WHERE id_document IN
(
   SELECT id_document FROM spip_documents_liens
   GROUP BY id_document
   HAVING COUNT(id_document)>1
)
AND ROLE=""

Supprimer des entrées en fonction de la valeur d’un champs

Ex : supprimer tous les inscrits (aux newsletters) qui ont été mis à la poubelle.

DELETE FROM `spip_mailsubscribers` WHERE `statut` = 'poubelle' 

Modifier du texte dans un certain champ d’une table

Ex : changer les url des images dans les anciennes newsletter suite à passage en https ou changement de d’arborescence de SPIP (mutualisé > non mutualisé)

UPDATE spip_newsletters SET html_email = REPLACE(html_email , 'http://www.domaine.net/sites/ancienne/arbo', 'https://www.domaine.net/nouvelle-arbo')