![]() |
codigo para campos blob en oracle funcionando
Hola a tod@, creo este nuevo hilo esta vez no para preguntar sino para pasarles el codigo de como hacer para poder insertar y extraer campos blob de una tabla de oracle, usando ADO, ya que fue muy dificil de encontrar en internet.
aca esta el codigo: procedure TForm.Button5Click(Sender: TObject);//para guardar en un campo blob un html var TF: TFileStream; dir:string; begin dir:='c:\temporal.html'; TF := TFileStream.Create( dir, fmOpenRead ); table1.open; Table1.insert; // Cargar el campo Blob desde la corriente TBlobField(Table1.FieldByName('ARCHIVO')).LoadFromStream(TF);//Stream); Table1.FieldByName('ID_DOCUMENTO').Value:=1; Table1.Post; Tf.Free; MessageDlg('Datos guardados',mtinformation,[mbOK],0); table1.Close; end; Una aclaracion muy importante uso en el connectiostring del adoconnection Provider=OraOLEDB.Oracle.1 ya que es el unico que no me dio problemas el MSDAORA.1 no funciona al guardar mas de 4kb. ahora para mostrarlo es mas simple solamente tienen que hacer esto: table1.open; table1.edit; TBlobField(Table1.FieldByName('ARCHIVO')).SaveToFile(ExtractFilePath(Application.ExeName)+'temporal. html'); ShellExecute(FComp0Km.Handle, nil, pchar(ExtractFilePath(Application.ExeName)+'temporal.html'),nil, nil, SW_SHOWNORMAL); Table1.Post; table1.close; aca guarda el archivo sacado del campo en un archivo temporal.html y luego ejecuta el internet explorer para verlo. Saludos a todo y espero que le haya sido util |
Muchas gracias por el aporte
Un saludo :) |
Agradecimiento
Gracias por compartir ese código, es de mucha utilidad.
|
La franja horaria es GMT +2. Ahora son las 03:50:16. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi