Bonjour,
Je désire remplacer dans une base de données via une requête SQL, une
chaine par une autre, du genre :
partout où il y a Bonjour, remplacer par Bonsoir
Bonjour -> Bonsoir
Bonjour toi ! -> Bonsoir toi !
Bien le Bonjour -> Bien le Bonsoir
Merci
tout exemple est le bien venu !
Vincent
Bonjour,
Je désire remplacer dans une base de données via une requête SQL, une
chaine par une autre, du genre :
partout où il y a Bonjour, remplacer par Bonsoir
Bonjour -> Bonsoir
Bonjour toi ! -> Bonsoir toi !
Bien le Bonjour -> Bien le Bonsoir
Merci
tout exemple est le bien venu !
Vincent
Bonjour,
Je désire remplacer dans une base de données via une requête SQL, une
chaine par une autre, du genre :
partout où il y a Bonjour, remplacer par Bonsoir
Bonjour -> Bonsoir
Bonjour toi ! -> Bonsoir toi !
Bien le Bonjour -> Bien le Bonsoir
Merci
tout exemple est le bien venu !
Vincent
Bon, j'avais pas cherché longtemps, il faut utiliser replace ( expliqué
dans la doc windev chercher : replace )
Je donnerai un exemple, dès que ça marchera :)
Vincent
"Vincent" a écrit dans le message de
news:4742a680$0$5101$Bonjour,
Je désire remplacer dans une base de données via une requête SQL, une
chaine par une autre, du genre :
partout où il y a Bonjour, remplacer par Bonsoir
Bonjour -> Bonsoir
Bonjour toi ! -> Bonsoir toi !
Bien le Bonjour -> Bien le Bonsoir
Merci
tout exemple est le bien venu !
Vincent
Bon, j'avais pas cherché longtemps, il faut utiliser replace ( expliqué
dans la doc windev chercher : replace )
Je donnerai un exemple, dès que ça marchera :)
Vincent
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742a680$0$5101$ba4acef3@news.orange.fr...
Bonjour,
Je désire remplacer dans une base de données via une requête SQL, une
chaine par une autre, du genre :
partout où il y a Bonjour, remplacer par Bonsoir
Bonjour -> Bonsoir
Bonjour toi ! -> Bonsoir toi !
Bien le Bonjour -> Bien le Bonsoir
Merci
tout exemple est le bien venu !
Vincent
Bon, j'avais pas cherché longtemps, il faut utiliser replace ( expliqué
dans la doc windev chercher : replace )
Je donnerai un exemple, dès que ça marchera :)
Vincent
"Vincent" a écrit dans le message de
news:4742a680$0$5101$Bonjour,
Je désire remplacer dans une base de données via une requête SQL, une
chaine par une autre, du genre :
partout où il y a Bonjour, remplacer par Bonsoir
Bonjour -> Bonsoir
Bonjour toi ! -> Bonsoir toi !
Bien le Bonjour -> Bien le Bonsoir
Merci
tout exemple est le bien venu !
Vincent
J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4, colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace ( expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL, une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4, colonne
40
Une idée ?
Merci
Vincent
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742a767$0$5090$ba4acef3@news.orange.fr...
> Bon, j'avais pas cherché longtemps, il faut utiliser replace ( expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
> news:4742a680$0$5101$ba4acef3@news.orange.fr...
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL, une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4, colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace ( expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL, une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace ( expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL, une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742af0d$0$27395$ba4acef3@news.orange.fr...
J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742a767$0$5090$ba4acef3@news.orange.fr...
> Bon, j'avais pas cherché longtemps, il faut utiliser replace ( expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
> news:4742a680$0$5101$ba4acef3@news.orange.fr...
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL, une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace ( expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL, une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
"patrice" a écrit dans le message de
news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL, une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
"patrice" <patrice_labracherie_nospam@free.fr> a écrit dans le message de
news:4742b0ca$0$20126$426a74cc@news.free.fr...
construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742af0d$0$27395$ba4acef3@news.orange.fr...
J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742a767$0$5090$ba4acef3@news.orange.fr...
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
> news:4742a680$0$5101$ba4acef3@news.orange.fr...
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL, une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
"patrice" a écrit dans le message de
news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL, une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de news:
47448c87$0$27380$ba4acef3@news.orange.fr...
Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc autant
tout faire en une passe avec un beau petit code."patrice" a écrit dans le message de
news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de news:
47448c87$0$27380$ba4acef3@news.orange.fr...
Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc autant
tout faire en une passe avec un beau petit code.
"patrice" <patrice_labracherie_nospam@free.fr> a écrit dans le message de
news:4742b0ca$0$20126$426a74cc@news.free.fr...
construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742af0d$0$27395$ba4acef3@news.orange.fr...
J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742a767$0$5090$ba4acef3@news.orange.fr...
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
> news:4742a680$0$5101$ba4acef3@news.orange.fr...
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc autant
tout faire en une passe avec un beau petit code."patrice" a écrit dans le message de
news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
Merci pour ton aide, j'avais fait la même chose sur une base postgres ( en
C# ) et ca marche très bien.
J'ai 20000 lignes à modifier, avec ton code je dois faire 20000 updates.
Il doit bien y avoir un moyen de faire un update avec un replace !!!
ou alors hyperfile et vraiment limité et non standard.
Quelqu'un a certainement une réponse à ce problème.
( ou alors je laisse tomber hyperfile !?)
Merci
Vincent
ps : je vais poser la question à pc soft
"Emmanuel LECOESTER" a écrit dans le message de
news: 474511cb$0$27372$
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc autant
tout faire en une passe avec un beau petit code."patrice" a écrit dans le message
de news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
Merci pour ton aide, j'avais fait la même chose sur une base postgres ( en
C# ) et ca marche très bien.
J'ai 20000 lignes à modifier, avec ton code je dois faire 20000 updates.
Il doit bien y avoir un moyen de faire un update avec un replace !!!
ou alors hyperfile et vraiment limité et non standard.
Quelqu'un a certainement une réponse à ce problème.
( ou alors je laisse tomber hyperfile !?)
Merci
Vincent
ps : je vais poser la question à pc soft
"Emmanuel LECOESTER" <elecoest@netcourrier.com> a écrit dans le message de
news: 474511cb$0$27372$ba4acef3@news.orange.fr...
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de news:
47448c87$0$27380$ba4acef3@news.orange.fr...
Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc autant
tout faire en une passe avec un beau petit code.
"patrice" <patrice_labracherie_nospam@free.fr> a écrit dans le message
de news:4742b0ca$0$20126$426a74cc@news.free.fr...
construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742af0d$0$27395$ba4acef3@news.orange.fr...
J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742a767$0$5090$ba4acef3@news.orange.fr...
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
> news:4742a680$0$5101$ba4acef3@news.orange.fr...
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
Merci pour ton aide, j'avais fait la même chose sur une base postgres ( en
C# ) et ca marche très bien.
J'ai 20000 lignes à modifier, avec ton code je dois faire 20000 updates.
Il doit bien y avoir un moyen de faire un update avec un replace !!!
ou alors hyperfile et vraiment limité et non standard.
Quelqu'un a certainement une réponse à ce problème.
( ou alors je laisse tomber hyperfile !?)
Merci
Vincent
ps : je vais poser la question à pc soft
"Emmanuel LECOESTER" a écrit dans le message de
news: 474511cb$0$27372$
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc autant
tout faire en une passe avec un beau petit code."patrice" a écrit dans le message
de news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
"Vincent" a écrit dans le message de news:
4745b617$0$5074$Merci pour ton aide, j'avais fait la même chose sur une base postgres (
en C# ) et ca marche très bien.
J'ai 20000 lignes à modifier, avec ton code je dois faire 20000 updates.
Non tu fais le nombre d'update nécessaire vu que tu testes auparavant ! le
nombre de lignes maj sera strictement identique. Fais un explain plan de
ta requete et tu verra :
Update
|- Table access Full
ou encore
Update
|- Table acce by rowid
|- Use Index XXXX
Et ce qqsoit la base de données ;)Il doit bien y avoir un moyen de faire un update avec un replace !!!
ou alors hyperfile et vraiment limité et non standard.
Bienvenu dans le monde des SGBD... aucun d'entre eux ne suit toutes les
normes SQL.Quelqu'un a certainement une réponse à ce problème.
( ou alors je laisse tomber hyperfile !?)
Oui celle que je t'ai donnée.Merci
Vincent
ps : je vais poser la question à pc soft
Donne nous leur réponse ^^
"Emmanuel LECOESTER" a écrit dans le message
de news: 474511cb$0$27372$
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc
autant tout faire en une passe avec un beau petit code."patrice" a écrit dans le message
de news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
"Vincent" <news@wwwww.com> a écrit dans le message de news:
4745b617$0$5074$ba4acef3@news.orange.fr...
Merci pour ton aide, j'avais fait la même chose sur une base postgres (
en C# ) et ca marche très bien.
J'ai 20000 lignes à modifier, avec ton code je dois faire 20000 updates.
Non tu fais le nombre d'update nécessaire vu que tu testes auparavant ! le
nombre de lignes maj sera strictement identique. Fais un explain plan de
ta requete et tu verra :
Update
|- Table access Full
ou encore
Update
|- Table acce by rowid
|- Use Index XXXX
Et ce qqsoit la base de données ;)
Il doit bien y avoir un moyen de faire un update avec un replace !!!
ou alors hyperfile et vraiment limité et non standard.
Bienvenu dans le monde des SGBD... aucun d'entre eux ne suit toutes les
normes SQL.
Quelqu'un a certainement une réponse à ce problème.
( ou alors je laisse tomber hyperfile !?)
Oui celle que je t'ai donnée.
Merci
Vincent
ps : je vais poser la question à pc soft
Donne nous leur réponse ^^
"Emmanuel LECOESTER" <elecoest@netcourrier.com> a écrit dans le message
de news: 474511cb$0$27372$ba4acef3@news.orange.fr...
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de news:
47448c87$0$27380$ba4acef3@news.orange.fr...
Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc
autant tout faire en une passe avec un beau petit code.
"patrice" <patrice_labracherie_nospam@free.fr> a écrit dans le message
de news:4742b0ca$0$20126$426a74cc@news.free.fr...
construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742af0d$0$27395$ba4acef3@news.orange.fr...
J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742a767$0$5090$ba4acef3@news.orange.fr...
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
> news:4742a680$0$5101$ba4acef3@news.orange.fr...
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
"Vincent" a écrit dans le message de news:
4745b617$0$5074$Merci pour ton aide, j'avais fait la même chose sur une base postgres (
en C# ) et ca marche très bien.
J'ai 20000 lignes à modifier, avec ton code je dois faire 20000 updates.
Non tu fais le nombre d'update nécessaire vu que tu testes auparavant ! le
nombre de lignes maj sera strictement identique. Fais un explain plan de
ta requete et tu verra :
Update
|- Table access Full
ou encore
Update
|- Table acce by rowid
|- Use Index XXXX
Et ce qqsoit la base de données ;)Il doit bien y avoir un moyen de faire un update avec un replace !!!
ou alors hyperfile et vraiment limité et non standard.
Bienvenu dans le monde des SGBD... aucun d'entre eux ne suit toutes les
normes SQL.Quelqu'un a certainement une réponse à ce problème.
( ou alors je laisse tomber hyperfile !?)
Oui celle que je t'ai donnée.Merci
Vincent
ps : je vais poser la question à pc soft
Donne nous leur réponse ^^
"Emmanuel LECOESTER" a écrit dans le message
de news: 474511cb$0$27372$
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc
autant tout faire en une passe avec un beau petit code."patrice" a écrit dans le message
de news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
je comprends rien à ton explication :)
+F5 c'est quoi ?
Vincent
"Emmanuel LECOESTER" a écrit dans le message de
news: 4745cb6a$0$5104$
"Vincent" a écrit dans le message de news:
4745b617$0$5074$Merci pour ton aide, j'avais fait la même chose sur une base postgres
( en C# ) et ca marche très bien.
J'ai 20000 lignes à modifier, avec ton code je dois faire 20000 updates.
Non tu fais le nombre d'update nécessaire vu que tu testes auparavant !
le nombre de lignes maj sera strictement identique. Fais un explain plan
de ta requete et tu verra :
Update
|- Table access Full
ou encore
Update
|- Table acce by rowid
|- Use Index XXXX
Et ce qqsoit la base de données ;)Il doit bien y avoir un moyen de faire un update avec un replace !!!
ou alors hyperfile et vraiment limité et non standard.
Bienvenu dans le monde des SGBD... aucun d'entre eux ne suit toutes les
normes SQL.Quelqu'un a certainement une réponse à ce problème.
( ou alors je laisse tomber hyperfile !?)
Oui celle que je t'ai donnée.Merci
Vincent
ps : je vais poser la question à pc soft
Donne nous leur réponse ^^
"Emmanuel LECOESTER" a écrit dans le message
de news: 474511cb$0$27372$
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc
autant tout faire en une passe avec un beau petit code."patrice" a écrit dans le message
de news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
je comprends rien à ton explication :)
+F5 c'est quoi ?
Vincent
"Emmanuel LECOESTER" <elecoest@netcourrier.com> a écrit dans le message de
news: 4745cb6a$0$5104$ba4acef3@news.orange.fr...
"Vincent" <news@wwwww.com> a écrit dans le message de news:
4745b617$0$5074$ba4acef3@news.orange.fr...
Merci pour ton aide, j'avais fait la même chose sur une base postgres
( en C# ) et ca marche très bien.
J'ai 20000 lignes à modifier, avec ton code je dois faire 20000 updates.
Non tu fais le nombre d'update nécessaire vu que tu testes auparavant !
le nombre de lignes maj sera strictement identique. Fais un explain plan
de ta requete et tu verra :
Update
|- Table access Full
ou encore
Update
|- Table acce by rowid
|- Use Index XXXX
Et ce qqsoit la base de données ;)
Il doit bien y avoir un moyen de faire un update avec un replace !!!
ou alors hyperfile et vraiment limité et non standard.
Bienvenu dans le monde des SGBD... aucun d'entre eux ne suit toutes les
normes SQL.
Quelqu'un a certainement une réponse à ce problème.
( ou alors je laisse tomber hyperfile !?)
Oui celle que je t'ai donnée.
Merci
Vincent
ps : je vais poser la question à pc soft
Donne nous leur réponse ^^
"Emmanuel LECOESTER" <elecoest@netcourrier.com> a écrit dans le message
de news: 474511cb$0$27372$ba4acef3@news.orange.fr...
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de news:
47448c87$0$27380$ba4acef3@news.orange.fr...
Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc
autant tout faire en une passe avec un beau petit code.
"patrice" <patrice_labracherie_nospam@free.fr> a écrit dans le message
de news:4742b0ca$0$20126$426a74cc@news.free.fr...
construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742af0d$0$27395$ba4acef3@news.orange.fr...
J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
news:4742a767$0$5090$ba4acef3@news.orange.fr...
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" <vincentxyz@wanado.fr> a écrit dans le message de
> news:4742a680$0$5101$ba4acef3@news.orange.fr...
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>
je comprends rien à ton explication :)
+F5 c'est quoi ?
Vincent
"Emmanuel LECOESTER" a écrit dans le message de
news: 4745cb6a$0$5104$
"Vincent" a écrit dans le message de news:
4745b617$0$5074$Merci pour ton aide, j'avais fait la même chose sur une base postgres
( en C# ) et ca marche très bien.
J'ai 20000 lignes à modifier, avec ton code je dois faire 20000 updates.
Non tu fais le nombre d'update nécessaire vu que tu testes auparavant !
le nombre de lignes maj sera strictement identique. Fais un explain plan
de ta requete et tu verra :
Update
|- Table access Full
ou encore
Update
|- Table acce by rowid
|- Use Index XXXX
Et ce qqsoit la base de données ;)Il doit bien y avoir un moyen de faire un update avec un replace !!!
ou alors hyperfile et vraiment limité et non standard.
Bienvenu dans le monde des SGBD... aucun d'entre eux ne suit toutes les
normes SQL.Quelqu'un a certainement une réponse à ce problème.
( ou alors je laisse tomber hyperfile !?)
Oui celle que je t'ai donnée.Merci
Vincent
ps : je vais poser la question à pc soft
Donne nous leur réponse ^^
"Emmanuel LECOESTER" a écrit dans le message
de news: 474511cb$0$27372$
"Vincent" a écrit dans le message de news:
47448c87$0$27380$Ca ne marche pas, je ne suis par certain de la syntaxe.
Je cherche un exemple
Je vais faire sourire les anti SQL :).
Un simple
HLP+F5 (ELEMENT)
tant que pas H.endehors
si ELEMENT.ELE_ARBRE contient {Param1} alors
ELEMENT.ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
Hupdate(ELEMENT)
fin si
fin
HLS+F5
fin
Pourquoi ?
Parce que ton update doit faire un parcours complet dans la table + une
lecture de la colonne ele_arbre de manière exhaustive (like). Donc
autant tout faire en une passe avec un beau petit code."patrice" a écrit dans le message
de news:4742b0ca$0$20126$construit toi meme le texte de la requete dans une chaine et utilise
hexecuterequetesql
"Vincent" a écrit dans le message de
news:4742af0d$0$27395$J'ai essayé :
UPDATE
ELEMENT
SET
ELE_ARBRE = REPLACE(ELEMENT.ELE_ARBRE,{Param1},{Param2})
WHERE
ELE_ARBRE LIKE {Param1}
Mais rien à faire le message :
Warning : Mot {Param1} inattendu REQ_MOD_NOEUD, Code SQL, ligne 4,
colonne
40
Une idée ?
Merci
Vincent
"Vincent" a écrit dans le message de
news:4742a767$0$5090$
> Bon, j'avais pas cherché longtemps, il faut utiliser replace (
> expliqué
> dans la doc windev chercher : replace )
>
> Je donnerai un exemple, dès que ça marchera :)
>
> Vincent
>
>
> "Vincent" a écrit dans le message de
> news:4742a680$0$5101$
>> Bonjour,
>>
>> Je désire remplacer dans une base de données via une requête SQL,
>> une
>> chaine par une autre, du genre :
>>
>> partout où il y a Bonjour, remplacer par Bonsoir
>>
>> Bonjour -> Bonsoir
>>
>> Bonjour toi ! -> Bonsoir toi !
>>
>> Bien le Bonjour -> Bien le Bonsoir
>>
>> Merci
>>
>> tout exemple est le bien venu !
>>
>> Vincent
>