Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

"Meter imagenes en MYSQL"

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: "Meter imagenes en MYSQL" Responder citando

hola a todos antes q nada, tengo un problema al meter imagenes a la BD,
estoy manejando MYSQL, no se q estoy haciendo mal ya me canse de buscarle,bueno apoyandome de algunos codigos de aqui del foro, tengo en un TBUTTON al insertar los datos el sig. codigo:

teniendo en cuenta q tengo una tabla llamada alumnos y sus campos
matricula int, nombre varchar(80), edad smallint, foto longblob, etc.

//---------------------------------------------------------------------------
void __fastcall TFalumnos::Button1Click(TObject *Sender)
{
TMemoryStream *stream = new TMemoryStream;
TJPEGImage *foto = new TJPEGImage;

foto->Assign( Image1->Picture->Bitmap );
foto->SaveToStream( stream );
stream->Seek( 0, soFromBeginning );

Query1->SQL->Text = "INSERT INTO ALUMNO( NOMBRE, EDAD, FOTO )"
"VALUES( '"+ Edit1->Text +"', "+ Edit3->Text.ToDouble() +", :foto )";
//aqui asigno el valor alparametro :foto
Query1->Params->Items[0]->LoadFromStream( stream , tBlob );
Query1->ExecSQL();

delete foto;
delete stream;

Query1->SQL->Text = "SELECT * FROM ALUMNO";
Query1->Open();

}
//---------------------------------------------------------------------------

con este codigo no me marca ningunn error, el problema q no me esta metiendo nada a la BD, entonces cuando la quiero sacar valgame la redundancia no vizualizo nada con el siguiente codigo:

este codigo esta en el evento ONCELLCLICK de un TDBGrid, para que cuando de click en una celda me muestre la foto del alumno selceccionado.

//---------------------------------------------------------------------------
void __fastcall TFalumnos::DBGrid1CellClick(TColumn *Column)
{
TJPEGImage *jpg = new TJPEGImage;
TMemoryStream *stream = new TMemoryStream;

Query1->SQL->Text = "SELECT * FROM ALUMNO WHERE MATRICULA = '"+ DBGrid1->Fields[0]->AsString +"' ";
Query1->Open();

TBlobField * Campo_Blob =
dynamic_cast<TBlobField*>(Query1->Fields->Fields[3]); //es el campo de
//de la foto
if( !Campo_Blob->Value.IsEmpty() )
{
Campo_Blob->SaveToStream( stream );
stream->Seek(0, soFromBeginning );
jpg->LoadFromStream( stream );
Image1->Picture->Assign( jpg );
}

delete stream;
delete jpg;
}
//---------------------------------------------------------------------------

no se q estoy haciendo mal ya le busque mucho tiempo, si alguien sabe cual es mi
error o q estoy haciendo mal, se los agredecere mucho.

ATTE
+ + ObeliX + +

"EL CONOCIMIENTO HUMANO PERTENCE AL MUNDO"
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

checa este post

https://cppbuilder.es/viewtopic.php?t=10880
_________________
Cool
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Hola Cesar, mira es lo q ocupo pero al poner el codigo me marcar un error, yo utilizo la version 6 del Builder no se si sea por eso, bueno pero este es el error que me sale con tu codigo:

[C++ Error] Unit1.cpp(42): E2268 Call to undefined function 'OleLoadPicturePath'

Estube buscando la funcion OleLoadPicturePath en la ayuda y no la encontre, cual version utilizas?, o q esta mal?.

ATTE

+ + ObeliX + +

"EL CONOCIMIENTO HUMANO PERTENECE AL MUNDO"
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Ya se por q le falta la libreria #include<olectl.h> eso era todo.

ATTE

+ + ObeliX + +

"EL CONOCIMIENTO HUMANO PERTENECE AL MUNDO"
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.