Konverter BLOB til data

Tags:    php

Hej,

Først lidt historie, så spørgsmålet ikke er dumt i jeres øjne.
Vi vandt en retssag pga. nogle rettigheder der blev overskredet af vores tidligere udbyder. Ud af denne retssag fik vi vores gamle hjemmeside igen, inkl. databasen med brugere m.v. i.

Denne SQL fil indeholder tabeller samt data, der er dog ET problem. I både FORUM og BRUGERE tabellen er felterne af BLOB typen (binært).

Nu til spørgsmålet. Er det muligt at konvertere disse BLOB værdier (email adresser, forum indlæg mv.) til almindelig TEKST data, så vi kan benytte denne database til noget.

Kan det lade sig gøre, og evt. hvordan. Behøver ikke komplette kode eksempler, bare evt. hints til hvordan det kan gøres, da jeg har ledt og ledt uden held.

Håber det er forståeligt, ellers vil jeg med glæde uddybe.

Med venlig hilsen
Casper Rasmussen






7 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 6 karma
Sorter efter stemmer Sorter efter dato
Hvis et udtræk af data ikke kan give dig et resultat, så er der nok ikke så meget at gøre. BLOB typer hentes ligesom alle andre typer.
Men hvis feltet er helt tomt, eller indeholder den tekst du beskriver så vil jeg desværre tro at dataen er tabt.

Men ellers burde du vide hvilket format denne blob-data er formateret med og derved kan du også skrive en funktion der omformatere det til korrekt output.

http://dev.mysql.com/doc/refman/5.0/en/blob.html
http://www.thescripts.com/forum/thread2810.html





Hej Casper,

En mulig løsning er, at lave en PHP side, som trækker et antal poster ud af data og i PHP konverterer fra binær data til en streng og indsætter i en ny tabel.

Lad denne PHP side kære i en browser lokalt på computeren med databasen, og refreshe sig selv jævntligt. Så har du det konverteret...

... alternativt kan du lave en forbindelse til databasen i Java eller andet programmerings sprog, og udføre den samme konverter og indsæt i ny tabel. Dette er en meget bedre løsning hvis der er "mange" indgange i tabellen der skal konverteres.

Derefter kan den nye tabel omdøbes efter at den gamle er slettet.

Med venlig hilsen
Ieet






Hvis det er MySQL kan du evt. bruge PHPMyAdmin til at importere hele gøglet til en ny database og så evt. eksportere derfra.
Ellers kan du bruge MySQL egen databaseman. app. eller Navicat.



Lige svar til Ieet:
Java er ikke min stærke side, men vil undersøge det nærmere. Kan du komme med et forslag på en funktion som konverterer fra binær data til en streng.

Det er omkring 20000 brugere og 100000 indlæg der skal konverteres. Vi synes ikke det giver mening at benytte blob der, men det er en anden sag.

Gnu:
Det er MySQL og PHPmyadmin, når jeg ser dataen i PHPmyadmin står der BLOB 16B eks. BLOB 128B.

Kan jeg benytte Myadmin til at få data ud fra disse binære?


Tak for svaret indtil nu, håber på i stadig følger med.

Mvh
Casper Rasmussen



Hvis du importere data til databasen... burde kunne lave alle de udtræk du ønsker... Når det er en SQL fil du har fået, har du sikkert også fået diverse koder med til at oprettelse af tabeller i databasen og derved burde du nemt kunne importere alt den date du ønsker.



Hvis du importere data til databasen... burde kunne lave alle de udtræk du ønsker... Når det er en SQL fil du har fået, har du sikkert også fået diverse koder med til at oprettelse af tabeller i databasen og derved burde du nemt kunne importere alt den date du ønsker.


Hej,

Landet ligger sådan at vi fik en g-zippet fil med databasen af den kuppende udbyder. Denne fil fik vi vores serverhost (scannet) til at ligge op, så det foregik professionelt uden fejl.
Jeg er selv programmør og arbejder både i PHP og MYSQL, og jeg står bag de omtalte sider som databasen er tilknyttet.

Denne database som vi fik udleveret er der en chance for at dataen er beskadiget, da det eneste sted BLOB er benyttet er i forum og brugere, som er de data vi selvfølgelig var ude efter og få benyttet igen.

Når databasen er lagt op, vises tabellerne osv. fint UNDTAGEN dataerne i BLOB felterne, disse har denne data: [BLOB - 32 B] [BLOB - 16 B] [BLOB - 128 B] mv.
DVS. alt andet end BLOB dataerne virker.

Nogen idé

Mvh
Casper Rasmussen





Hvis et udtræk af data ikke kan give dig et resultat, så er der nok ikke så meget at gøre. BLOB typer hentes ligesom alle andre typer.
Men hvis feltet er helt tomt, eller indeholder den tekst du beskriver så vil jeg desværre tro at dataen er tabt.

Men ellers burde du vide hvilket format denne blob-data er formateret med og derved kan du også skrive en funktion der omformatere det til korrekt output.

http://dev.mysql.com/doc/refman/5.0/en/blob.html
http://www.thescripts.com/forum/thread2810.html

Tak for din tid, du får lige 200 points med på vejen som tak for hjælpen.




t