
Mise à jour par lots de l'URL MySQL : remplacez uniquement le nom de domaine et la partie chemin
Cet article explique comment utiliser la fonction REPLACE de MySQL pour modifier l'URL dans la table de la base de données, en remplaçant uniquement les parties du nom de domaine et du chemin, et en conservant le nom du fichier.
Question :
Supposons qu'il existe une table MySQL contenant deux colonnes : id et url. La colonne url contient une URL similaire à "http://domain1.example/images/img1.jpg". Comment puis-je mettre à jour toutes les URL vers « http://domain2.example/otherfolder/img1.jpg » tout en conservant le nom de fichier ?
Réponse :
Exécutez l'instruction SQL suivante pour terminer la mise à jour :
<code class="language-sql">UPDATE urls SET url = REPLACE(url, 'domain1.example/images/', 'domain2.example/otherfolder/')</code>
Explication :
UPDATE urls spécifie le nom de la table à modifier comme urls. SET url = ... spécifie la mise à jour de la colonne url. REPLACE(url, 'domain1.example/images/', 'domain2.example/otherfolder/') permet de remplacer une partie de l'URL. REPLACELe premier paramètre de la fonction est la chaîne URL d'origine. REPLACE trouve la sous-chaîne spécifiée dans chaque valeur d'URL et la remplace par une nouvelle sous-chaîne, en préservant le nom de fichier. Avec cette méthode, vous pouvez mettre à jour efficacement un grand nombre d'URL dans la base de données, en modifiant uniquement le nom de domaine et les parties de chemin spécifiés sans affecter le nom du fichier.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!
Comment résoudre le problème selon lequel les CAO ne peuvent pas être copiés dans le presse-papiers
Vérifiez l'état du port occupé dans Windows
Une mémoire capable d'échanger des informations directement avec le CPU est une
Qu'est-ce qu'une base de données relationnelle
Quels sont les systèmes Linux courants ?
Vérifier la taille du dossier sous Linux
css
Pourquoi vue.js signale-t-il une erreur ?