Cómo insertar una imagen en la estructura de la base de datos MySQL, no del usuario

Si realmente desea almacenar una imagen directamente en las tablas de la base de datos, debe decidir si realmente desea hacer esto. Si las imágenes son más grandes que unas pocas docenas de K, es posible que desee considerar un servidor de imágenes separado, ya que las bases de datos relacionales no son tan buenas para almacenar imágenes de manera eficiente.

Dicho esto, si aún desea almacenar una imagen, es probable que deba almacenarla en una columna VARBINARIA (para imágenes pequeñas de menos de 64 K) o en una columna de blob (es decir, 11.4.3 Los tipos BLOB y TEXT) . El tipo de blob que usará depende del tamaño máximo de sus imágenes.

Luego, inserta los datos en el blob usando “LOAD_FILE (nombre de archivo)”, si el archivo de imagen es visible para el servidor de la base de datos (no es suficiente que sea visible en el cliente, ya que el archivo debe ser abierto por la instancia del servidor MySQL), o usaría un valor hexadecimal de los bytes mismos, como se explica aquí: ¿Cómo insertar archivos BLOB y CLOB en MySQL?

(Si tuviera que almacenar imágenes como esta, elegiría el enfoque hexadecimal para insertar, ya que requerir que el cliente y el servidor de la base de datos tengan archivos mutuamente visibles limita enormemente su arquitectura y es un riesgo de seguridad potencial).

A juzgar por su pregunta, probablemente no esté muy familiarizado con las bases de datos SQL. Los objetos que no son de texto se almacenan en BLOBs. El manejo de BLOB no es tan fácil como el SQL normal y existen diferencias en el manejo entre bases de datos.

Muchos simplemente almacenarán imágenes en un sistema de archivos y mantendrán la ubicación del archivo en la base de datos. Hay muchas razones por las cuales, como el mantenimiento más fácil (copia de seguridad y tamaño de la base de datos), la velocidad y los problemas de implementación del manejo de E / S necesarios.

Tendrá que entender cómo funciona esto en general, pero estos dos enlaces deberían ayudar:

Subir imágenes a una tabla de base de datos MySQL

PHP MySQL BLOB

More Interesting

¿Vale la pena aprender MEAN stack para el desarrollo web (tengo 20 años)?

No estoy alcanzando ningún hito en el aprendizaje del desarrollo web. ¿Estoy en el camino equivocado?

Me gustaría aprender a codificar con énfasis en el desarrollo móvil / web, ¿cuál es el mejor lenguaje para comenzar y por qué?

Tengo fondos y habilidades limitados, ¿debería comenzar mi propio equipo de desarrollo o subcontratar el desarrollo o una combinación de ambos?

Cuando uso el comando 'docker-compose up' obtengo el error 'cliente y servidor no tienen la misma versión (cliente: 1.14, servidor: 1.12)' pero el cliente y el servidor tienen la misma versión 1.12. ¿Que puedo hacer?

Yo soy un contador. ¿Cómo aprendo el script HTML y Java?

¿Por qué aparece el error 'modelstate no válido' en ASP.NET?

Estoy en el proceso de comenzar un sitio web de anuncios de trabajo y realmente me gustaría saber cuáles son las cosas principales que debo considerar antes de hacerlo, para alguien que solo conoce un poco de HTML, ¿no es suficiente para crear un sitio funcional completo?

Voy a comenzar a desarrollar un gran proyecto de red social. ¿Debo usar Node.JS o necesito usar Java (para el backend)?

¿Qué debo cambiar para mejorar mi sitio web al convertir nuevos clientes (https://maidonthespot.com)?

Si tengo un sitio web receptivo existente codificado principalmente en html5, CSS y Java (sin php), ¿cómo puedo agregar un blog de wordpress al sitio sin convertirlo en un tema de wp? ¿Hay buena documentación sobre esto? Solo quiero que la sección del blog sea wp.

Estoy interesado en reconstruir la versión 2004 de Facebook. ¿Cómo puedo hacer esto?

¿Las personas se están alejando de PHP? ¿Por qué?

Me gustaría construir un motor de búsqueda diseñado para África. ¿Cómo puedo hacerlo?

He sido aceptado en el desarrollo web inicial de HappyFunCorp. 'Academia de tecnología'. ¿Cómo es trabajar allí?