Mysql
 sql >> Base de données >  >> RDS >> Mysql

mysql wildcard (ignorer un/deux caractères dans la recherche)

Vous ne pouvez pas utiliser le caractère générique UPDATE déclarations - vous devez écrire un UPDATE déclaration pour chaque table.

Non testé :

CREATE PROCEDURE cleanup()
BEGIN

  DECLARE i INT DEFAULT 1;

  PREPARE stmt FROM "UPDATE ? 
                        SET option_value = REPLACE(option_value, 'http://www.old-domain.com', 'http://www.new-domain.com') 
                      WHERE option_name IN ('home', 'siteurl')"

  WHILE i <= 10
    EXECUTE stmt USING CONCAT('wp_', i, '_options');

    SET i = i + 1;
  END WHILE;

  DEALLOCATE PREPARE stmt;

END;