Envoyé par beberd
Ton idée est interressante mais si dans le champs adresse j'ai:
PORTE DE LA PAPE
En sachant bien sur que RTE est l'abréviation de ROUTE
Si je me contente de ta solution en placant un IF pour dire:
IF a like concat ('RTE', ' %')
Il va me modifier le champs PORTE DE LA PAPE ----> POROUTE DE LA PAPE
D'ou mon intérêt pour les LEFT car je sais que le champs "RTE" (que je veux changer) si il n'est pas entouré d'espace sera forcement en DEBUT du champs adresse !!!!
JEU DE TEST:
RTE DE PARIS
PORTE DE LA PAPE
58 RTE DE MARSEILLE
Dans les 1er et 3ème seulement le champs RTE doit être modifié.
Dans les différentes procédures que j'ai crée, je sui capable de modifier le 3ème cas mais mon souhait est d'rrivée à modifier le premier cas.
Pour ca je passe dans différente boucle de test et c'est là que j'ai mon soucis
Pour résumer le test
a est une chaine de caractère contenant ' RTE '
d étant le champs du curseur contenant l'adresse
et qd j'ecrit
set c=concat(' ',LEFT(d,3),' ')
if a=c
then insert into test values (c)
end if
c est ainsi une autre chaine de caractère contenant ' RTE ' (à un moment donné dans le jeu de test).
D'ou l'égalité possible avec la valeur de a
Il est incapable de comprendre l'instruction, hors si je fais sauter la boucle if
set c=concat(' ',LEFT(d,3),' ')
then insert into test values (c)
Il m'insert correctement les valeurs prises par c (tout ceci est dans une boucle repeat until)
OU EST LE PROBLEME AUTOUR DE MON IF?