delphi数据库存储图片

--存

str_sql := ‘update photo set photo = :photo ‘;
  str_sql := str_sql + ‘ where sex = ‘‘女‘‘‘;
  with qry_for_show do
  begin
    Close;
    SQL.Clear;
    SQL.Add(str_sql);
    Parameters.ParamByName(‘photo‘).Assign(img2.Picture.Graphic);
    ExecSQL;
  end;

--读

procedure Tfrmpicsave.BitBtn1Click(Sender: TObject);
var
  Stream:TMemoryStream;
  Jpg:TdxPNGImage;
begin
  qry_for_show.Close;
  qry_for_show.SQL.Text:=‘SELECT * FROM HLDJPHOTO‘;   // 查询图片
  qry_for_show.Open;
  if not qry_for_show.FieldByName(‘photo‘).IsNull then
  begin
    Stream:=TMemoryStream.Create ;
    Jpg:=TdxPNGImage.Create ;
    TBlobField(qry_for_show.FieldByName(‘photo‘)).SaveToStream(Stream);    // 显示的转换为BlobField并保存到内存流
        TBlobField(qry_for_show.FieldByName(‘photo‘)).SaveToFile(ExtractFilePath(Application.ExeName) + ‘www‘);    // 显示的转换为BlobField并保存到内存流
    Stream.Position :=0;

jpg.LoadFromStream(Stream);    // 加载图片

image1.Picture.Assign(Jpg);
  end
  else
  begin
    image1.Picture :=nil;
  end;

Stream.Free;

Jpg.Free;
end;

时间: 2024-10-03 23:00:45

delphi数据库存储图片的相关文章

数据库存储图片路径并显示图片

这几天在做图片的上传和显示,上传时保存图片到文件夹中并将其存储路径保存到数据库里,显示时用数据绑定显示 让此图片控件连接上图片所在的路径 之前在网上收集了相关资料,大多数人表示这个路径应该是绝对路径而不是相对路径,所以一开是存储路径的保存是这样的 但是运行结果是.... 这里的头像是无法显示的 后来在学长的帮助下,将存储路径修改为 这是一个相对路径,VS读取数据中从这个"异次元空间"文件夹里开始寻找(也就是从根目录里开始),下属文件夹里images寻找20161124213555917

数据库存储图片和读取图片

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; using System.Data.SqlClient; namespace WindowsFormsApplication2 { pu

在数据库中 存储图片 以及 在界面中显示图片(存储图片路径)- 这种方法相对与存储二进制文件好

花了一下午时间,终于学会了在数据库中存储图片,以及在界面中显示图片了. 存储图片有两种方法: 一种是:直接把图片转换成二进制文件存储在数据库中. 一种是:存储图片的路径到数据库,用的时候直接调用路径给image等图像控件即可. 两种方法,有利有弊,第一种方法适合存储量少且重要的图片信息.第二种方法适合存储量大但不是太重要的图片. 我使用的是第二种方法,简单,实用. 下面就是我具体的实现过程: 首先我新建了两个网页文件,insert_photo.aspx / select_photo.apsx 第

Hibernate图片数据库存储

1. 数据库设计 类型:mediumblob 2. 实体类设计 java.sql.Blob对象:image 3. hibernate映射 <property name="image" type="blob"> <column name="IMAGE" sql-type="mediumblob"></column> </property> 4. 逻辑实现 1). 存储 News n

数据库存储txt文本和jpg图片

环境:MySql+SQLyog+j2se+jdbc 存储文本用longtext类型 存储图片用blob类型 1.首先建表 create table t_t (id int(16) NOT NULL AUTO_INCREMENT,longText longtext,picture blob, PRIMARY KEY (`id`)) ; `longText` longtext,//文本txt `picture` blob,//图片pic 数据库为t_test,表为t_t 2.jdbc操作,打开ecl

C# 图片数据库存储、读取页面展示

一个网站,图片数据是一定存在的:图片存储如何处理,有很多方式. 自己总结两种:1.将图片保存为静态文件形式:(优点:文件容易转移.备份:缺点:文件丢失不易恢复)2.将图片转换为字节流获其他方式获取图片完整数据进行存储(优点:数据库保存,不易丢失:缺点:数据库空间增长较快) 之前图片保存是通过保存文件名称等基本信息,未对图片的原始内容进行处理:最近 想换种方式进行图片数据保存:特记录. 保存文件完整信息,常用的方式是将文件转换为二进制流,保存进数据库,当然也可以保存图片为base64 数据流. 1

Windowform 窗体关联数据库存储,读取图片,参考代码

namespace flowlayoutpanel_容器 { public partial class picturebox : Form { public picturebox() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { //从硬盘上读取图片显示在界面 openFileDialog1.Filter = "@.Jpg|*.jpg|@.Png|*.png|@.Jif|*.

SQL 2008存储图片和SQL 2008读取图片

用SQL Server存储文字数据很容易实现,如果用SQL Server存储图片呢?大家有没有实现思路呢?现在我用一个Demo来为大家提供一种在SQL Server中存储图片的思路. 场景:在superPhoto文件夹中,有三位NBA超级巨星的图片需要存储在数据库中,他们分别是保罗.罗斯和德隆,文件内容如下: 有了需求,下面讲实现.实现过程分为3个步骤. 步骤1:我们需要在数据库test中建立T_superStar表,并向表中插入三位球星的信息. create table T_superStar

Java利用Eclipse和Mysql数据库连接并存储图片——取出图片

通过流和JPEGCodec.JPEGImageEncoder类的操作来取出数据库中的图片. 注释很详细,注意要额外的引入mysql的驱动包,要修改数据库的用户名和密码以及URL.希望对大家有帮助. import java.awt.image.BufferedImage; import java.io.*; import java.sql.Blob; import java.sql.Connection; import java.sql.DriverManager; import java.sql