Remplacer une partie de chaine de caractère par une autre dans un champ...
turlututuchapopointu
Messages postés38Date d'inscriptionmardi 21 novembre 2000StatutMembreDernière intervention12 août 2005
-
4 août 2005 à 10:47
turlututuchapopointu
Messages postés38Date d'inscriptionmardi 21 novembre 2000StatutMembreDernière intervention12 août 2005
-
5 août 2005 à 11:38
Salut à tous,
J'aimerai savoir comment formuler une requête qui remplacerai une partie de chaine de caractère par une autre dans un champ (en gardant le nom du fichier inchangé)?
ex:C:\...\MaBaseDeDonnées\Illustrations\...+NomDuFichier >> D:\MaBaseDeDonnéesSauvée1\IllustrationsSauvées\...+NomDuFichier
Sélectionner un champ >> je sais faire
Update d'un champ avec une valeur constante >> je sais faire aussi
Updater un champ ou chaque valeur est différente >> ?
Récupérer cette valeur pour n'en remplacer qu'une partie >> ?
Il y a au moins un point positif: l'adresse à remplacer est toujours la même et l'adresse à mettre à la place idem.
J'ai essayé la fonction Replace mais j'ai un message d'erreur comme quoi il attend un "=" alors qu'aucuner mention de ce "=" n'est faite dans l'aide de VB.
Quelqu'un a une idée?
A voir également:
Remplacer une partie de chaine de caractère par une autre dans un champ...
turlututuchapopointu
Messages postés38Date d'inscriptionmardi 21 novembre 2000StatutMembreDernière intervention12 août 2005 4 août 2005 à 12:32
Bon, alors voilà. J'ai mis le replace suivant:
cheminFinal = Replace(IllusTruc.Lien, FileIllustrations, "D:\MaBaseDeDonnéesSauvée1\IllustrationsSauvées")
IllusTruc est ma table et Lien est le champ où je veux qu'il y aie des remplacements.
Problème: Erreur d'exécution'424': Objet requis.
Il semblerai que l'appel de mon champ ne lui plaise pas. Comment faire pour qu'il aille chercher une ligne après l'autre?
aieeeuuuuu
Messages postés698Date d'inscriptionjeudi 16 janvier 2003StatutMembreDernière intervention20 mai 20113 5 août 2005 à 10:10
oulala mais attend,
tu veux faire la modif directement dans la base de données ?
ou est-ce que tu veux juste manipuler les variables VB ?
si tu veux le faire directement dans la base, deux solutions :
soit tu recupere dans un premier temps le contenu du champs dans une var VB, tu la modifie puis tu remet dans la base.
mais le mieux c'est encore de faire le tout en une seule requete. du style
UPDATE maTable
SET monChamps = REPLACE(monChamps, ChaineInitiale, ChaineFinale)
mais la la fonction REPLACE va dependre de ton SGBDR (celle que j'ai mise au dessus c'est pour du SQL Server.
enfin je suis pas sur d'avoir tres bien compris ce que tu veux faire ?!?
turlututuchapopointu
Messages postés38Date d'inscriptionmardi 21 novembre 2000StatutMembreDernière intervention12 août 2005 5 août 2005 à 11:22
Merci pour ces indices.
Mon SGBDR est Access 2003. Ce que je veux faire, c'est préparer les données à la sauvegarde. J'ai une table où des adresses de fichiers sont répertoriées. Jusqu'ici tu me suis.
Pour vider le DD de temps en temps, on va graver ces données sur un CD, non? Pour pouvoir toujours les consulter, il faut donc modifier l'accès à ces données. D'où la modification d'une partie de la chaine de caractères: C:\ ...\Monfichier.jpg >> D:\..(autre adresse)\MonFichier.jpg
Je vais essayer ta requête.
Vous n’avez pas trouvé la réponse que vous recherchez ?