Erstatt streng i MySQL via database

Utgave

Hvordan erstatter du en streng med en annen i alle tabellene i en database?

Erstatt krever at han gir navnet på et bord og en kolonne, så det er ikke brukbart slik.

Eksempel:

Erstatt 'string1' med 'word1' i database 'test' på de 50 tabellene som komponerer en enkelt linje.

Løsning

Før du fortsetter, sørg for å ta sikkerhetskopi av arbeidet ditt!

Vennligst klikk her for å vite mer om sikkerhetskopiering og gjenoppretting av mysql-databasen:

//ccm.net/faq/2884-backup-restore-mysql-database

Hvis du bruker MySQL 5.1, kan du bruke informasjonsskjema databasen, som blant annet inneholder listen over alle tabeller i databasen din ...

da kan du for eksempel bli brukt til å generere forespørselen din.

ex:

 VELG KONCAT ('UPDATE test.', TABLE_NAME, 'SET field1 = REPLACE (field1, ' string1 ', ' string1 ');') INFORMATION_SCHEMA.TABLES FROM WHERE TABLE_SCHEMA = 'test'; 

-> Denne spørringen gir deg et resultat som du bare kan lime inn i klienten:

 test.table1 UPDATE SET feltet1 = REPLACE (field1, "string1", "string1") test.table2 UPDATE SET field1 = REPLACE (felt1, "streng1", "streng1"); 
Forrige Artikkel Neste Artikkel

Beste Tips