热搜
您的位置:首页 >> 教育

在Delphi程序中操作大二分对象BLOB

2019年11月05日 栏目:教育

下面是一个简单的例子。一个简单的例子本例中,采用Paradox数据库。库中有两个字段,一个是字符型,另一个是BLOB型。我们在主Fo

下面是一个简单的例子。

一个简单的例子

本例中,采用Paradox数据库。库中有两个字段,一个是字符型,另一个是BLOB型。我们在主Form上放一个OLE控件用于编辑及转换数据。一个Table控件操作数据库。源代码如下:

unit blob01;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls, Grids, DBGrids, Db, DBCtrls, OleCtnrs, DBTables, ExtCtrls;

type

TForm1 = class(TForm)

Panel1: TPanel;

Panel2: TPanel;

Splitter1: TSplitter;

Panel3: TPanel;

Table1: TTable;

OleContainer1: TOleContainer;

DBNavigator1: TDBNavigator;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

OpenBtn: TButton;

CloseBtn: TButton;

OpenDialog1: TOpenDialog;

LoadBtn: TButton;

Table1Filename: TStringField;

Table1ABlob: TBlobField;

procedure OpenBtnClick(Sender: TObject);

procedure CloseBtnClick(Sender: TObject);

procedure LoadBtnClick(Sender: TObject);

procedure Table1AfterScroll(DataSet: TDataSet);

private

{ Private declarations }

public

{ Public declarations }

end; var

Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.OpenBtnClick(Sender: TObject);

begin

Table1.Open; //打开数据库

end;

procedure TForm1.CloseBtnClick(Sender: TObject);

begin

Table1.Close; //关闭数据库

end;

//打开一个数据文件、创建OLE对象、将对象数据存入数据库

procedure TForm1.LoadBtnClick(Sender: TObject);

var

fn: string;

begin

if OpenDialog1.Execute then begin //打开文件

fn := ExtractFileName(OpenDialog1.FileName);

Table1FileName.AsString := fn;

OleContainer1.CreateObjectFromFile(OpenDialog1.FileName, False); //创建OLE对象

OleContainer1.SaveToFile("tmp"); //将OLE数据存入临时文件

Table1ABlob.LoadFromFile("tmp"); //将OLE数据存入数据库

end;

end;

//定义此方法用于显示当前记录中的OLE对象

procedure TForm1.Table1AfterScroll(DataSet: TDataSet);

begin

if not Table1ABlob.IsNull then begin

Table1ABlob.SaveToFile("tmp"); //数据存入临时文件

OleContainer1.LoadFromFile("tmp"); //从临时文件中读取OLE对象

end;

end;

end.

该程序在Delphi 5.0下编译通过。

查看本文来源

天津医博肛肠医院电话
河北中医医院耿兰书
贵阳哪家医院治疗癫痫病好
厦门治疗月经不调费用
徐州治疗包皮包茎费用
  • 友情链接
  • 合作媒体