Avatar billede carstengp Nybegynder
09. juni 2009 - 18:39 Der er 8 kommentarer og
1 løsning

søg og erstat via SQL

Jeg faldt over denne side:
http://www.shaolintiger.com/2006/01/17/searchfind-and-replace-using-phpmyadmin-and-mysql/

Og jeg kunne måske godt bruge dette til at erstatte nogle forkerte tegn til æ, ø og å i min database.

sætningen:
update table_name set field_name = replace
(field_name,'replace_this','with_that');

Er jeg ikke helt sikker på at bruge...
Men jeg kunne godt bruge noget, der gennemsøger hele datasen og ændrer de tegn, den finder, til de rigtige.
Det vil tage timer hvis jeg skal sidde og skrive navnene på hver enkelt tabel.

F.eks. vil jeg gerne ændre alle: Ã¥ til å.
Kan nogen komme med et bud på en klar-til-brug sætning?
Avatar billede tompoulsen Nybegynder
09. juni 2009 - 19:29 #1
Umiddelbart tror jeg ikke du kan finde/lave en sætning, som kan lave så omfangsrig en opgave i et hug.

Men jeg ville lave en eksport af hele databasen til en sql fil og derefter åbne sql filen i notepad. Her ville jeg lave søg og erstat på de tegn der skal ændres og derefter importere sql filen igen. Simpelt, lavteknologisk, men det virker.
Avatar billede carstengp Nybegynder
09. juni 2009 - 19:33 #2
ja, det var også min egen løsning, men jeg turde sgu ikke lige gå i kast med det uden videre, da det er en rimelig stor database :)
Avatar billede tompoulsen Nybegynder
09. juni 2009 - 19:39 #3
Det kan du roligt gøre, hvis du blot husker at gemme en kopi af den originale Sql fil INDEN du laver søg og erstat. Så er det jo nemt at restore den originale sql fil hvis der er gået "ged" i den tilrettede sql fil.

Jeg har gjort det flere gange uden problemer, blot ikke på danske karakterer, men på uønskede bindestreger i fødselsdato.

God fornøjelse
Avatar billede arne_v Ekspert
10. juni 2009 - 03:49 #4
Du kan godt lave en SP som itererer over alle tabel og alle felter og laver UPDATE.
Avatar billede carstengp Nybegynder
14. juni 2009 - 15:17 #5
Nu har jeg forsøgt mig med et par tabeller og eksporteret, rettet æ, ø å osv.

Jeg har så forsøgt mig med at imortere filen igen. Det går også fint borstet fra at alle æ, ø, å osv. er udskiftet med spørgsmålstegn.

Jeg kan vælge tegnsæt for filen og har prøvet flere forskellige... men den bliver ved med at lave ?

Jeg har forsøgt Binary, utf8, acsii, CP1250...
Hvad skal jeg vælge for at den uploader med æøå?
Avatar billede carstengp Nybegynder
14. juni 2009 - 15:17 #6
hvis jeg ikke kan få det rigtigt bliver det jo fuldkommen umuligt at rette æøå, da alle jo nu er ???
Avatar billede carstengp Nybegynder
14. juni 2009 - 15:20 #7
Der står også noget med: SQL-kompatibilitetsmodus
Hvad er det? - Det står som standard til NONE
Avatar billede arne_v Ekspert
15. juni 2009 - 21:33 #8
Hvis tabellens karakter saet, din angivelse af import filens karaktersaet, din fils faktiske karakter saet og det karakterseat som din web side fortaeller browseren at det er naar du checker importen alle matcher, saa vil det virke.

Det er kun 4 ting som skal matche.
Avatar billede carstengp Nybegynder
15. juni 2009 - 23:31 #9
ja, det fattede jeg så ikke noget af...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester