Created
May 23, 2019 08:41
-
-
Save lucnap/30161d5c476f31811cb36ac75d33ebf5 to your computer and use it in GitHub Desktop.
How to replace a string in all fields of a table in Mysql with PHP
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$host = 'localhost'; | |
$user = 'root'; | |
$pass = '--------------'; | |
$db = 'rmadata'; | |
$conn = new mysqli($host, $user, $pass, $db); | |
$thisword = "\r\n"; | |
$shouldbe = " "; | |
$thistable = "rma"; | |
MySQL_replace_all($thisword, $shouldbe, $thistable, $conn); | |
function MySQL_replace_all($thisword, $shouldbe, $thistable, $conn){ | |
$cnamnes = "SHOW columns FROM " . $thistable; | |
$result = $conn->query($cnamnes); | |
while($columnname = $result->fetch_assoc()) { | |
$replace_SQL = "UPDATE $thistable SET ". $columnname['Field'] ." = TRIM( REPLACE(". $columnname['Field'] .",'". $thisword ."', '". $shouldbe ."') );"; | |
echo $replace_SQL . "\r\n"; | |
$conn->query($replace_SQL); | |
} | |
} | |
/* | |
To execute in Mysql: | |
set session group_concat_max_len = 1000000; | |
select GROUP_CONCAT(CONCAT('"', COLUMN_NAME, '"')) as col_names from INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = "rma" ORDER BY ORDINAL_POSITION | |
result: | |
"ID";"ID_TransazioneInviata";"ID_TransazioneRicevuta";"NumOrdine";"DataOrdine";"CodRaggrupSped";"NumSchedaLab";"DataDDTCentro";"NumDDTCentro";"NRAWB";"DataIngresso";"ImeiAtteso";"ImeiEntrato";"MeccanicoEntrato";"MarchioEntrato";"ModelloEntrato";"CodProdottoEntrato";"DesProdottoEntrato";"DataProduzione";"DataScontrino";"CodStato";"DesStato";"CodSottoStato";"DesSottoStato";"LavorazioneEffettuata";"DataRiparazione";"Commento";"MotivoResoGuasto";"MotivoPreventivoDifferente";"PrezzoPreventivo";"Prezzo";"DataBollaOut";"NumBollaOut";"AWBOut";"ModelloUscito";"CodProdottoUscito";"ImeiUscito";"MeccanicoUscito";"TipoApparato";"Marchio";"Modello";"Imei";"CodArticolo";"DesArticolo";"StatoGenerale";"AccessoriConsegnati";"CodiceSblocco";"CodicePIN";"DescrizioneDifetto";"Annotazioni";"Garanzia";"DataAcquisto";"TipoRiparazione";"PrezzoRiparazione";"PreventivoIniziale";"CliFinNome";"CliFinCognome";"CliFinIndirizzo";"CliFinLocalita";"CliFinCap";"CliFinProv";"CliFinNazione";"CliFinTelefono";"CliFinEmail";"CodCdr";"RagSocCDR";"IndirizzoCDR";"CapCDR";"CittaCDR";"ProvCDR";"Nazione";"TelefonoCDR";"EmailCDR";"PivaCDR";"CodicePOS";"Laboratorio";"TipoRettifica";"NuovoPreventivoAccettato";"PreventivoNuovo";"Marcatore";"Fatturato";"DaFatturare";"PrzCessioneFatturato";"OTP";"ID_CliFin";"ID_Marca";"ID";"ID_TransazioneInviata";"ID_TransazioneRicevuta";"NumOrdine";"DataOrdine";"CodRaggrupSped";"NumSchedaLab";"DataDDTCentro";"NumDDTCentro";"NRAWB";"DataIngresso";"ImeiAtteso";"ImeiEntrato";"MeccanicoEntrato";"MarchioEntrato";"ModelloEntrato";"CodProdottoEntrato";"DesProdottoEntrato";"DataProduzione";"DataScontrino";"CodStato";"DesStato";"CodSottoStato";"DesSottoStato";"LavorazioneEffettuata";"DataRiparazione";"Commento";"MotivoResoGuasto";"MotivoPreventivoDifferente";"PrezzoPreventivo";"Prezzo";"DataBollaOut";"NumBollaOut";"AWBOut";"ModelloUscito";"CodProdottoUscito";"ImeiUscito";"MeccanicoUscito";"TipoApparato";"Marchio";"Modello";"Imei";"CodArticolo";"DesArticolo";"StatoGenerale";"AccessoriConsegnati";"CodiceSblocco";"CodicePIN";"DescrizioneDifetto";"Annotazioni";"Garanzia";"DataAcquisto";"TipoRiparazione";"PrezzoRiparazione";"PreventivoIniziale";"CliFinNome";"CliFinCognome";"CliFinIndirizzo";"CliFinLocalita";"CliFinCap";"CliFinProv";"CliFinNazione";"CliFinTelefono";"CliFinEmail";"CodCdr";"RagSocCDR";"IndirizzoCDR";"CapCDR";"CittaCDR";"ProvCDR";"Nazione";"TelefonoCDR";"EmailCDR";"PivaCDR";"CodicePOS";"Laboratorio";"TipoRettifica";"NuovoPreventivoAccettato";"PreventivoNuovo";"Marcatore";"Fatturato";"DaFatturare";"PrzCessioneFatturato";"OTP" | |
with this we have the folder we are allowed to to store the extracted data: | |
SELECT @@global.secure_file_priv; | |
SELECT * | |
FROM rma | |
WHERE ID > 0 | |
INTO OUTFILE 'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/rma.csv' | |
FIELDS TERMINATED BY ';' | |
ENCLOSED BY '"' | |
LINES TERMINATED BY '\r\n'; | |
open the extracted file data with and editor and substitute all the occurrences of ;\N with ;"" | |
*/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment