PHP - guardar archivos en base de datos o en directorio?

 
Vista:

guardar archivos en base de datos o en directorio?

Publicado por oscartt67 (15 intervenciones) el 13/04/2012 10:31:18
Saludos a todos.
Desde siempre, cuando tengo que vincular imagenes, pdf,... a un objeto de la db, por ejemplo, articulos, creo una carpeta en servidor /articulos/archivos y los guardo ahi, utilizando articulos.id para crear el nombre del archivo (12_fichatecnica.pdf).

Sin embargo, ahora estoy planteando crear una tabla 'archivos', con los campos tabla,tabla_id,key,archivo.

Alguien tiene una razón de peso para utilizar o no alguno de los dos modos?

Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

guardar archivos en base de datos o en directorio?

Publicado por xve (6935 intervenciones) el 13/04/2012 14:45:14
Hola Oscar, yo te recomiendo la utilización de los archivos en contra de guardar los archivos en la base de datos.
Interpreto, que cuanto menos tamaño tenga cada registro de la base de datos, menos le va a costar a la base de datos realizar las búsquedas, devolver los valores, etc...

Espero que te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

guardar archivos en base de datos o en directorio?

Publicado por oscartt67 (1 intervención) el 13/04/2012 16:41:17
Tal y como lo planteo, no creo que eso que comentas ocurra. Fijate que no guardo el archivo en la tabla 'articulos', sino en una tabla aparte 'archivos'. De esta manera, al hacer un select sobre articulos, no se ralentiza, y cuando necesite el archivo, 'select archivo from archivos where tabla='articulos' and tabla_id=$articulos_id and key='fichatecnica'.
El tiempo de carga de dicha select en comparacion de la carga del archivo desde disco, no creo que sea muy significativa.
Voy errado? Gracias por tu atención!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar