Avatar billede pashmak Nybegynder
09. november 2008 - 23:23 Der er 5 kommentarer

Query til at find/erstat i alle tabeller?

Hej folkens,

Jeg har brug for en SQL query der i en mysqli database kan udfører en slags find/erstat som man kender fra notepad.

Det jeg helt konkret skal er at finde alle "minside.dk/demo" i databasen og erstatte det med "side.dk".


Findes der en query for det? eller SKAL man downloade sql filen og gør det i tekstprogram?

På forhånd tak
Avatar billede arne_v Ekspert
09. november 2008 - 23:29 #1
Downloade en dump, editere den og loade den er nok det nemmeste.

Men du kan gode lave noget kode som løber gennem alle tabeller og alle felter
og opdaterer.
Avatar billede pashmak Nybegynder
09. november 2008 - 23:35 #2
Så dvs. det burde ikke være et problem igennem en editor?

frygtede bare at det ville ødelægge noget. Men det vil jeg prøve så :)

tak
Avatar billede Slettet bruger
10. november 2008 - 01:54 #3
Der er min. 1 minus ved at hente SQL koden ned, og bruge en 'Replace' funktion.
Selve problemet ligger ikke i at hente koden ned og ændre "minside.dk/demo" til noget andet, men ved at utrolig mange har problemer med tegn som Æ, Ø og Å.
Så jeg vil råde dig til at lave et script i f.eks. PHP hvis du bruger det, og så loope hele databasen igennem, og ændre det der skal ændres istedet.
Avatar billede recli Nybegynder
12. november 2008 - 10:33 #4
Lidt afhængig af, hvor mange tabeller og felter din streng evt. kan forekomme i, kan du også lave en replace i SQL med følgende kommando:

update tabelnavn set feltnavn = REPLACE(feltnavn,'minside.dk/demo','side.dk')

Den skal så fyres af en gang for hver tabel.

Husk nu en backup, før du begynder at lege med 'globale updates'...

  /recli
Avatar billede pashmak Nybegynder
12. november 2008 - 10:37 #5
Mange tak for jeres svar.

Jeg benyttede en editor i denne omgang, eftersom det ikke var en speciel kompleks database. Men jeg har i hvertfald noteret mig jeres svar til en anden god  gang. Så må jeg lige vurdere de andre muligheder også.

Tak for jeres svar, er sikker på mange, inkl mig selv, har fået glæde af det
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