[MySQL] Export equivalent van Load_File()

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Goeiemiddag,

Ik ben hier net bezig met een nieuwe versie van m'n webapplicatie in PHP. De webapplicatie staat het gebruikers toe om bestanden te uploaden en downloaden. De bestanden werden tot nu toe als files opgeslagen in een directory op de harde schijf met verdere file info in een MySQL database.

Nu willen we om verschillende (goede! ;) ) redenen de bestanden als Blobs opslaan in de database. Het probleem is echter dat de bestanden vaak vele megabytes groot kunnen zijn, dus als je ze eerst in PHP gaat inladen en ze vervolgens pas in de DB stopt of naar de client doorstuurt, dan gebruikt PHP onacceptabel veel geheugen en kost het zowiezo onnodig performance.

De ideale oplossing is om MySQL direct de geuploade files te laten inlezen en direct temp files te laten exporteren die door PHP middels readfile kunnen worden doorgestuurd naar de client. Het inlezen van de temp files gebeurt nu al met MySQL's Load_File("filename") functie.

Ik kan alleen geen export functie vinden om een blob veld weer uit te schrijven naar een temp bestand. Een SELECT unique_blob_field AS Save_File("filename") of iets dergelijks is eigenlijk waar ik naar op zoek ben. Dit is in principe de belangrijkste stap omdat het nodig is voor efficiente downloads.

Dus weet iemand hoe ik dit op kan lossen, zonder de file data eerst uit MySQL te halen via een query en dan pas uit te schrijven?

Alvast bedankt! :)

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Argh, eerst even verder kijken dan m'n neus lang is :+

Wat ik wil kan met de SELECT INTO DUMPFILE syntax van MySQL. Naja, hoop dat iemand hier nog eens wat aan heeft :)

[ Voor 3% gewijzigd door Verwijderd op 01-07-2005 13:17 ]