程序如果连SQL SERVER 2000,使用IMAGE类型,没有问题
procedure TForm1.selectimageClick(Sender: TObject);
begin
if openpicturedialog1.Execute then
image1.Picture.LoadFromFile(openpicturedialog1.FileName );
end;procedure TForm1.savetodbClick(Sender: TObject);
var
ext:string;
begin
if image1.picture.Graphic <> nil then
begin
adotable1.Edit ;
adotable1.FieldByName('myimage').Assign(image1.Picture.Graphic); ext:=extractfileext(openpicturedialog1.FileName );
if uppercase(ext) = '.BMP' THEN
adotable1.FieldByName('isbmp').VALUE := 1
ELSE IF (UPPERCASE(EXT) = '.JPEG') OR (UPPERCASE(EXT) = '.JPG') THEN
adotable1.FieldByName('isbmp').VALUE := 0; //JPEG
ADOTABLE1.Post ;
end;
end;
procedure TForm1.Adotable1AfterScroll(DataSet: TDataSet);
var
jpegimage:tjpegimage;
begin
image1.Picture.Graphic :=nil;
if adotable1.fieldbyname('isbmp').Asstring = '1' then //BMP
image1.Picture.bitmap.Assign(adotable1.fieldbyname('myimage'))
else if adotable1.fieldbyname('isbmp').asstring = '0' then //JPEG
begin //begin2
jpegimage := tjpegimage.Create ;
try
jpegimage.Assign(adotable1.fieldbyname('myimage'));
image1.Picture.Graphic :=jpegimage;
finally
jpegimage.Free ;
end; //end try
end; //end begin2
end;procedure TForm1.MaskEdit1Change(Sender: TObject);
begin
Adotable1.Filter:='BT_CODE='''+MaskEdit1.Text+'''';
Adotable1.Filtered:=True;
Adotable1.open;
end;联DB2 7,使用BLOB数据类型,则出现错误:
project1.exe raised exception class EDBEngineError with message 'General SQL error. [IBM][CLI Driver]CLI0102E无效的转换。SQLSTATE=07006'.使用BDE,也是同样的错误。请大家帮帮我,肯定给分!
procedure TForm1.selectimageClick(Sender: TObject);
begin
if openpicturedialog1.Execute then
image1.Picture.LoadFromFile(openpicturedialog1.FileName );
end;procedure TForm1.savetodbClick(Sender: TObject);
var
ext:string;
begin
if image1.picture.Graphic <> nil then
begin
adotable1.Edit ;
adotable1.FieldByName('myimage').Assign(image1.Picture.Graphic); ext:=extractfileext(openpicturedialog1.FileName );
if uppercase(ext) = '.BMP' THEN
adotable1.FieldByName('isbmp').VALUE := 1
ELSE IF (UPPERCASE(EXT) = '.JPEG') OR (UPPERCASE(EXT) = '.JPG') THEN
adotable1.FieldByName('isbmp').VALUE := 0; //JPEG
ADOTABLE1.Post ;
end;
end;
procedure TForm1.Adotable1AfterScroll(DataSet: TDataSet);
var
jpegimage:tjpegimage;
begin
image1.Picture.Graphic :=nil;
if adotable1.fieldbyname('isbmp').Asstring = '1' then //BMP
image1.Picture.bitmap.Assign(adotable1.fieldbyname('myimage'))
else if adotable1.fieldbyname('isbmp').asstring = '0' then //JPEG
begin //begin2
jpegimage := tjpegimage.Create ;
try
jpegimage.Assign(adotable1.fieldbyname('myimage'));
image1.Picture.Graphic :=jpegimage;
finally
jpegimage.Free ;
end; //end try
end; //end begin2
end;procedure TForm1.MaskEdit1Change(Sender: TObject);
begin
Adotable1.Filter:='BT_CODE='''+MaskEdit1.Text+'''';
Adotable1.Filtered:=True;
Adotable1.open;
end;联DB2 7,使用BLOB数据类型,则出现错误:
project1.exe raised exception class EDBEngineError with message 'General SQL error. [IBM][CLI Driver]CLI0102E无效的转换。SQLSTATE=07006'.使用BDE,也是同样的错误。请大家帮帮我,肯定给分!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货