23. august 2006 - 14:15
Der er
3 kommentarer og 1 løsning
Konvertering af input kommando
Heeeey Jeg går lige til sagen. Jeg har et udtræk fra en gammel database som ser således ud: INSERT INTO `email_sending` VALUES (110, 3, '80808080' , 'xx@xx.dk'); Det skulle jeg gerne have ind i en ny database, men formateret således: INSERT INTO `plm_subscribers` (`subscriberid`, `emailaddr`, `firstname`, `lastname`, `userfield1`, `userfield2`, `createdatetime`, `pending`) VALUES (1, 'xx@xx.dk', '80808080', NULL, 'ukendt', 'ukendt', '2006-08-23 11:58:46', 0); Er der nogen derude der ved om der findes et smart værktøj som kan tage 80808080 og xx@xx.dk fra den gamle formatering ind i den nye ?? Jeg har lavet udtrækket som .TXT. På forhånd tak...
Annonceindlæg fra IBM
Slettet bruger
23. august 2006 - 15:09
#1
Tag din tekstfil (eller helst en kopi af den) og åbn den i en teksteditor. Søg/erstat. Søg efter: `email_sending` Erstat med: `plm_subscribers` (`firstname`, `emailaddr`) Så mangler du kun at fjerne de to tal fra hver linie. Hvis din teksteditor understøtter søg/erstat med regulære udtryk, så er det også ret let: Søg efter: "VALUES (\d+, \d+, " Erstat med: VALUES ( NB! Jeg satte " om søgestrengen, da den slutter med et mellemrum
23. august 2006 - 15:24
#2
hehe den med søg erstat på table name havde jeg godt regnet ud, tak ;) Men at få '80808080' og 'xx@xx.dk' overført er være! Men kan man det med regulære udtryks søgning ??
Slettet bruger
23. august 2006 - 17:15
#3
Ja. Efter begge søg/erstat er gennemført burde filen ligne dette: INSERT INTO `plm_subscribers` (`firstname`, `emailaddr`) VALUES ('80808080', 'xx@xx.dk'); Det kan forresten også lade sig gøre at lave et php-script, som laver erstatningerne og outputter den passende nye textfil.