sql >> Base de Datos >  >> RDS >> Mysql

Insertar datos de blob en Java usando PreparedStatement

Por supuesto que serán diferentes. La siguiente consulta hace lo siguiente:

"insert into registration(image) values('"+b1+"')"

Tome b1, que es una matriz de bytes, y llame a su toString() método. Esto da como resultado una cadena como [[email protected] , que significa "un objeto de tipo matriz de bytes con hashCode 8976876", pero no representa el contenido de la matriz de bytes en absoluto. Luego inserte esta cadena en la tabla.

Una matriz de bytes no es una cadena. Fin de la historia. debes use una declaración preparada para insertar datos binarios en una tabla. De hecho, siempre debe usar una declaración preparada para ejecutar cualquier consulta que tenga un parámetro no constante.