/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
mySQL søg og erstat?
Fra : .°o.O Thomas O.o°.


Dato : 30-10-08 15:56

Jeg skal have ændret URL på en del links i en Wordpress og bruger denne
SQL-forespørgsel:

update wp_posts set post_content = replace (`post_content`,
'clk.tradedoubler.com/click?p=12345&a=12345&g=0&url=',
'track.webgains.com/click.html?wgcampaignid=12345&wgprogramid=12345&wgtarget=');

men så kommer denne fejl:

#1064 - You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near
'?p=12345&a=123454&g=0&url=', 'track.webgains.com/click.html

Er der nogen der kan hjælpe med hvad der går galt? SQL-forespørgslen har jeg
fra dette link:
http://www.marketingtechblog.com/2007/05/14/mysql-search-replace/

På forhånd tak.

--
MVH Thomas
http://www.sjovevarer.dk - cool stuff og fede gaveidéer
http://www.mobil-navigation.dk - få din mobil til at navigere med GPS
http://www.pageview.dk - online 3D PDF til kun USD 199,- for et år!
http://www.central-stoevsugere.dk - få bedre indeklima billigere end du tror


 
 
Gert Krabsen (30-10-2008)
Kommentar
Fra : Gert Krabsen


Dato : 30-10-08 19:06

..°o.O Thomas O.o°. skrev:
> Jeg skal have ændret URL på en del links i en Wordpress og bruger denne
> SQL-forespørgsel:
>
> update wp_posts set post_content = replace (`post_content`,
> 'clk.tradedoubler.com/click?p=12345&a=12345&g=0&url=',
> 'track.webgains.com/click.html?wgcampaignid=12345&wgprogramid=12345&wgtarget=');
>
>
> men så kommer denne fejl:
>
> #1064 - You have an error in your SQL syntax; check the manual that
> corresponds to your MySQL server version for the right syntax to use
> near '?p=12345&a=123454&g=0&url=', 'track.webgains.com/click.html
>
> Er der nogen der kan hjælpe med hvad der går galt? SQL-forespørgslen har
> jeg fra dette link:
> http://www.marketingtechblog.com/2007/05/14/mysql-search-replace/


Et hurtigt gæt er, at den opfatter ? som et wild-card (det gør i al fald
nogle mySql-baser) - og derfor ikke kan tåle at have det i replace-strengen

.°o.O Thomas O.o°. (30-10-2008)
Kommentar
Fra : .°o.O Thomas O.o°.


Dato : 30-10-08 19:36

"Gert Krabsen" <fjernkrabsen@fjernkrabsenfjern.dk> skrev i meddelelsen
news:4909f627$0$90264$14726298@news.sunsite.dk...
> .°o.O Thomas O.o°. skrev:
>> Jeg skal have ændret URL på en del links i en Wordpress og bruger denne
>> SQL-forespørgsel:
>>
>> update wp_posts set post_content = replace (`post_content`,
>> 'clk.tradedoubler.com/click?p=12345&a=12345&g=0&url=',
>> 'track.webgains.com/click.html?wgcampaignid=12345&wgprogramid=12345&wgtarget=');
>> men så kommer denne fejl:
>>
>> #1064 - You have an error in your SQL syntax; check the manual that
>> corresponds to your MySQL server version for the right syntax to use near
>> '?p=12345&a=123454&g=0&url=', 'track.webgains.com/click.html
>>
>> Er der nogen der kan hjælpe med hvad der går galt? SQL-forespørgslen har
>> jeg fra dette link:
>> http://www.marketingtechblog.com/2007/05/14/mysql-search-replace/
>
>
> Et hurtigt gæt er, at den opfatter ? som et wild-card (det gør i al fald
> nogle mySql-baser) - og derfor ikke kan tåle at have det i
> replace-strengen

Ok, er der nogen måde at omgå dette på?

--
MVH Thomas
http://www.sjovevarer.dk - cool stuff og fede gaveidéer
http://www.mobil-navigation.dk - få din mobil til at navigere med GPS
http://www.pageview.dk - online 3D PDF til kun USD 199,- for et år!


Martin (30-10-2008)
Kommentar
Fra : Martin


Dato : 30-10-08 21:59

..°o.O Thomas O.o°. wrote:
> "Gert Krabsen" <fjernkrabsen@fjernkrabsenfjern.dk> skrev i meddelelsen
> news:4909f627$0$90264$14726298@news.sunsite.dk...
>> .°o.O Thomas O.o°. skrev:
>>> Jeg skal have ændret URL på en del links i en Wordpress og bruger
>>> denne SQL-forespørgsel:
>>>
>>> update wp_posts set post_content = replace (`post_content`,
>>> 'clk.tradedoubler.com/click?p=12345&a=12345&g=0&url=',
>>> 'track.webgains.com/click.html?wgcampaignid=12345&wgprogramid=12345&wgtarget=');
>>> men så kommer denne fejl:
>>>
>>> #1064 - You have an error in your SQL syntax; check the manual that
>>> corresponds to your MySQL server version for the right syntax to use
>>> near '?p=12345&a=123454&g=0&url=', 'track.webgains.com/click.html
>>>
>>> Er der nogen der kan hjælpe med hvad der går galt? SQL-forespørgslen
>>> har jeg fra dette link:
>>> http://www.marketingtechblog.com/2007/05/14/mysql-search-replace/
>>
>>
>> Et hurtigt gæt er, at den opfatter ? som et wild-card (det gør i al
>> fald nogle mySql-baser) - og derfor ikke kan tåle at have det i
>> replace-strengen
>
> Ok, er der nogen måde at omgå dette på?
>

Prøv med \?
\ plejer altid ay være et "udkommenter" tegn (kan ikke lige finde på det
rigtige navn hehe)

.°o.O Thomas O.o°. (31-10-2008)
Kommentar
Fra : .°o.O Thomas O.o°.


Dato : 31-10-08 09:59

"Martin" <maaNO@SPAMscandesigns.dk> skrev i meddelelsen
news:490a20ac$0$90268$14726298@news.sunsite.dk...
>>> Et hurtigt gæt er, at den opfatter ? som et wild-card (det gør i al fald
>>> nogle mySql-baser) - og derfor ikke kan tåle at have det i
>>> replace-strengen
>>
>> Ok, er der nogen måde at omgå dette på?
>>
>
> Prøv med \?
> \ plejer altid ay være et "udkommenter" tegn (kan ikke lige finde på det
> rigtige navn hehe)

Det virkerede heller ikke

Jeg har fikset på det en knap så elegant måde - både den URL der skal
erstattes og den der erstatter havde begge et enkelt ? i adressen, så jeg
erstattede frem til ?-tegnet og derefter efter ?-tegnet, så ?-tegnet blev
stående og jeg erstattede det på hver side af det.

Men det vil være interessant at finde en løsning på det, hvis jeg nu ikke
var så heldig af have et enkelt ?-tegn i begge adresser.

--
MVH Thomas
http://www.sjovevarer.dk - cool stuff og fede gaveidéer
http://www.mobil-navigation.dk - få din mobil til at navigere med GPS
http://www.pageview.dk - online 3D PDF til kun USD 199,- for et år!
http://www.central-stoevsugere.dk - få bedre indeklima billigere end du tror


Kim Emax (18-11-2008)
Kommentar
Fra : Kim Emax


Dato : 18-11-08 01:35

On Oct 31, 9:59 am, .°o.O Thomas O.o°. <fla...@it.invalid> wrote:

> Men det vil være interessant at finde en løsning på det, hvis jeg nu ikke
> var så heldig af have et enkelt ?-tegn i begge adresser.

Jeg prøvede lige på en MySQL5, uden problemer:

update projects set name= replace (`name`,'clk.tradedoubler.com/click?
p=12345&a=12345&g=0&url=','track.webgains.com/click.html?
wgcampaignid=12345&wgprogramid=12345&wgtarget=');
Query OK, 0 rows affected (0.02 sec)
Rows matched: 14 Changed: 0 Warnings: 0

men en anden gang ville jeg forslå dig at spørge i en databasegruppe,
der vil du kunne få et klarere svar

--
Mvh
Kim Emax

Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409081
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste