我的学习生涯(Delphi篇) - 21

    我们平常要和图片打交道,那么我们如何把图片存在数据库中呢?

    -------------------------------------------------------------------------------------------------美丽分割线---------------------------

   年代:2007

   文件:My0919.7z


   程序运行效果如下图:

   

   


   单元文件:

   Unit1.pas

 

unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, DB, ADODB, StdCtrls, ExtCtrls, ExtDlgs, LoadSaveImg, DBCtrls;typeTForm1 = class(TForm)Button1: TButton;Button2: TButton;ADOConnection1: TADOConnection;ADODataSet1: TADODataSet;OpenPictureDialog1: TOpenPictureDialog;Button3: TButton;ADODataSet1car_number: TStringField;ADODataSet1pic1: TBlobField;DataSource1: TDataSource;DBNavigator1: TDBNavigator;Image1: TImage;DBMemo1: TDBMemo;procedure Button1Click(Sender: TObject);procedure Button3Click(Sender: TObject);procedure Button2Click(Sender: TObject);private{ Private declarations }TS: TMemoryStream;LSI: TLSImg;public{ Public declarations }end;varForm1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
varFName, FType: string;
beginOpenPictureDialog1.Filter := GraphicFilter(TGraphic);if OpenPictureDialog1.Execute thenbeginFName := OpenPictureDialog1.Files.Strings[0];FType := Copy(FName, LastDelimiter(' .', FName) + 1, Length(Fname) - LastDelimiter(' .', Fname));LSI := TLSImg.Create;if LSI.GetImgType(FType) <> 0 thenbeginTS := TMemoryStream.Create;LSI.Picture.Graphic.LoadFromFile(FName);LSI.SaveToStream(TS);with ADODataSet1 dobegintryAppend;(Fields[1] as TBlobField).LoadFromStream(TS);Post;exceptraiseend;end;TS.Free;end;LSI.Free;end;
end;procedure TForm1.Button3Click(Sender: TObject);
begin//ADOConnection1.Close;ADOConnection1.Open;Application.MessageBox('connection success!','hint',0);//ADODataSet1.Close;ADODataSet1.CommandText:='select car_number,pic1 from totalTable';ADODataSet1.Open;Application.MessageBox('query success!','hint',0);
end;procedure TForm1.Button2Click(Sender: TObject);
beginwith ADODataSet1 dobeginif not Eof thenbeginLSI := TLSImg.Create;TS := TMemoryStream.Create;(Fields[1] as TBlobField).SaveToStream(TS);LSI.LoadFromStream(TS);Image1.Picture := LSI.Picture;TS.Free;LSI.Free;end;end;
end;end.

 

 

 

转载于:https://www.cnblogs.com/snake-hand/archive/2013/06/10/3131116.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/421724.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WordPress的RSS订阅优化

一、确定一个永久的RSS地址 WordPress默认的订阅地址是www.domain.com/feed&#xff0c;使用这样的地址有三个比较大的缺陷&#xff1a; 1、无法统计多少人订阅了你。 2、博客更换域名或者被GFW后原RSS地址不能访问了&#xff0c;原来的读者群就流失了。 3、输出的内容太单调…

redis数据批量导入导出

针对工作中可能用到 将某台服务器中的redis数据 导出然后导入到新的服务器中&#xff0c;一种方法是redis-dump工具&#xff0c;但是 他需要安装ruby环境&#xff0c;安装环境的过程中还可能出现意想不到的错误。所以不得不选用其他方法了。一下 是几点思路 供参考。在此谢谢我…

c语言把int指针强制转换成void指针_神一般的C语言指针,你看懂多少?

下面&#xff0c;做个测试&#xff0c;如果下面的指针问题你能够全都解答正确&#xff0c;那么你的C语言功底真是神一般的了。http://1.int *p;http://2.int **p;http://3.int *p[10];http://4.int (*p)[10];http://5.int *p(int);http://6.int (*p)(int);http://7.int (*p[10]…

基于混合云存储系统的电影推荐引擎小结

基于混合云存储系统的电影推荐引擎 推荐算法部分是Mahout下的Taste实现的&#xff0c; 数据集采用GroupLens 的数据集合&#xff0c;将这些数据集转换到mysql数据库中 其中Taste&#xff1a;http://mahout.apache.org/ GroupLens数据集&#xff1a;http://www.grouplens.org/n…

机器学习里面的基函数_厉害了!机器学习用到SSD里面

近年来人工智能和大数据的迅速发展正在深刻改变着这个世界和我们的生活方式。人工智能的核心是机器学习(Machine Learning) 算法&#xff0c;自 2006 年以来&#xff0c;在机器学习领域&#xff0c;以深度学习(Deep Lerning) 为代表的机器学习算法取得了突破性的进展&#xff0…

【好用的ORM框架】

对于开发采用orm会带来很大便利&#xff0c;orm即是数据表和实体对于关系框架。内部封装增删改查。它不仅适用于mvc&#xff0c;而且在winform和webform都适用。下面具体介绍orm是使用&#xff1a; 初步在winform为例使用&#xff0c;随后在在mvc大量运用&#xff1a; 1&#x…

愤怒的小鸟4只编外鸟_加西亚时隔三年夺美巡第11冠,马尔纳蒂9鸟单独第二

桑德森农场锦标赛战罢&#xff0c;第三轮并列领先的西班牙名将加西亚决赛轮打出5鸟1鹰2柏忌&#xff0c;以-19(68-68-66-67)的总成绩1杆优势夺冠&#xff0c;结束了三年的冠军荒。后来居上的马尔纳蒂决赛轮狂抓9鸟没有吞下一个柏忌&#xff0c;收获了职业生涯最低杆63杆&#x…

pgslq表的字段类型,如何在PostgreSQL中获取表的列表列名称和数据类型?

With the following query, we can get a list of column names and datatype of a table in PostgreSQL.解决方案SELECTa.attname as "Column",pg_catalog.format_type(a.atttypid, a.atttypmod) as "Datatype"FROMpg_catalog.pg_attribute aWHEREa.attnu…

【Linux操作系统分析】设备驱动处理流程

1 驱动程序&#xff0c;操作系统&#xff0c;文件系统和应用程序之间的关系 字符设备和块设备映射到操作系统中的文件系统&#xff0c;由文件系统向上提供给应用程序统一的接口用以访问设备。 Linux把设备视为文件&#xff0c;称为设备文件&#xff0c;通过对设备文件的读写操作…

C语言基础之数据结构

1.32 换成数字23 # include<stdio.h> //编译预处理指令 # include <math.h> # define pi 3.1415926 //定义不变常量 int convert(int num); char ABC(char a); double sum(double a,double b, double c); double area(double a,double b, double c); double num(…

硬件描述语言复习笔记

第一章 1、控制复杂性的艺术&#xff1a; A、抽象&#xff1a;管理复杂性的关键技术在于抽象即隐蔽不重要的细节 B、约束&#xff1a;对设计选择的一种内在限制&#xff0c;目的是为了可以更有效的在更高的抽象层 次上工作 C、三条原则&#xff1a; 层次化&#xff1a;一个系统…