【例子介绍】
【相关图片】
【源码结构】
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Db, DBTables, Grids, DBGrids, Mask, DBCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Panel1: TPanel;
Table1: TTable;
Table1hjz: TStringField;
Table1zq1: TStringField;
Table1vbn: TBlobField;
DataSource1: TDataSource;
Panel2: TPanel;
DBNavigator1: TDBNavigator;
DBGrid1: TDBGrid;
DBEdit2: TDBEdit;
DBEdit1: TDBEdit;
Button2: TButton;
Button3: TButton;
Button1: TButton;
Panel3: TPanel;
edit2: TMemo;
Panel4: TPanel;
Panel5: TPanel;
Panel6: TPanel;
GroupBox1: TGroupBox;
edit1: TMemo;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
shuzhu=array[0..10001] of real;
var
Form1: TForm1;
myv,mm1:shuzhu;
j:word;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
j:=0;
with table1 do
begin
close;
tablename:='hjz'; //创建HJZ数据库表
if not exists then //如果不存在
begin
CreateTable; //就创建一个( tablename:='hjz'; //创建HJZ数据库表)
end;
open; // 打开
end;
//固定屏幕大小:
form1.Width:=978;
form1.Height:=582;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
vj:Tblobstream; //声明流数据变量
sj:Tblobstream; //声明流数据变量
i:integer;
begin
for i:=0 to 10000 do myv[i]:=i j; //生成数组数据
with table1 do
begin
append; //插入新数据
table1hjz.Value:='朱庆' inttostr(j); //写数据库第一个字段
table1zq1.Value:='zhuqng' inttostr(i); //写数据库第2个字段
vj:=Tblobstream.Create(table1vbn,bmwrite); //流
vj.Write(myv,sizeof(myv));//myv=数组;sizeof(myv):数组长度大小
vj.Free; //释放内存
post; //更新
//--------------------------------
edit1.Text:=''; //清空之前的显示
for i:=0 to 3000 do
begin
edit1.Text:=edit1.Text floattostr(myv[i]) ' ';
//edit1.Lines.Add(edit1.Text floattostr(myv[i]) ' ');
end;
end;
j:=j 1;
end;
procedure TForm1.Button2Click(Sender: TObject); //读取
begin
form1.Close;
end;
procedure TForm1.Button3Click(Sender: TObject);
var
nj:Tblobstream; //声明流数据变量
i:integer;
begin
with table1 do
begin
//从数据库读取数组数据
nj:=Tblobstream.Create(table1vbn,bmRead); //流
nj.Read(mm1,sizeof(mm1));
nj.Free; //释放内存
edit2.Text:=''; //清空之前的显示
//显示读取数据:
for i:=0 to 1000 do
begin
edit2.Text:=edit2.Text floattostr(mm1[i]) ' ';
end;
end;
end;
end.



评论