====== Remplacement d'une sous-chaîne dans un champ ======
À partir de Firebird 2.1 il y a une fonction **REPLACE**.
Pour voir ce que ça donne dans une requête SELECT :
select chemin, replace(lower(chemin), 'c:\oldpath\', 'c:\newpath\')
from mytable
where lower(chemin) like 'c:\oldpath\%';
Par exemple cela donnerait ceci :
^ CHEMIN ^ REPLACE ^
| **c:\oldpath\**dossier1 | **c:\newpath\**dossier1 |
| **c:\oldpath\**dossier2 | **c:\newpath\**dossier2 |
| **c:\oldpath\**dossier2\lettre.doc | **c:\newpath\**dossier2\lettre.doc |
Appliquer les changements avec une requête UPDATE :
update mytable
set chemin = replace(lower(chemin), 'c:\oldpath\', 'c:\newpath\')
where lower(chemin) like 'c:\oldpath\%';