写ORACLE数据库的BLOB字段,代码如下:
...
...
ADSSEND.Edit;
TblobField(ADSSEND.FieldByName('PICBLOB')).LoadFromStream(FMemStream); //FmemStream有数据
ITEST := ADSSEND.FieldByName('PICBLOB').DataSize;//测试语句,发现DataSize总是为0
ADSSEND.Post;
...为什么ADSSEND.FieldByName('PICBLOB').DataSize总是为0,如何才能把大字段存入ADSSEND数据集?
很急呀,请大虾们指导一下,小弟不胜感激!
...
...
ADSSEND.Edit;
TblobField(ADSSEND.FieldByName('PICBLOB')).LoadFromStream(FMemStream); //FmemStream有数据
ITEST := ADSSEND.FieldByName('PICBLOB').DataSize;//测试语句,发现DataSize总是为0
ADSSEND.Post;
...为什么ADSSEND.FieldByName('PICBLOB').DataSize总是为0,如何才能把大字段存入ADSSEND数据集?
很急呀,请大虾们指导一下,小弟不胜感激!
解决方案 »
- TList与控件应用,涉及Delphi基础,请您解答!
- 本人想从麦克风中采集音频数据,读到内存中,并从网络中发出;不知道用DSPACK组件如何实现?
- 各位大哥,如何获得给定图像(图标)的色彩数呢?
- 有人需要毕业设计吗?
- 怎么在EXCEL中进行查找?
- 求助Duck Barcode Component支持Delphi 6的版本!!
- 有关端口操作疑难求解,高手快来!!!!在线给分
- 江湖救急!!!!我的程序报"Project app.exe raised exception class EAccessViolation with with Message'模块访问冲突',请问是什么问题,如果搞不定,我就死定了!!!!谢谢大家
- 新手咨询,请高手指教!
- 关于Tstrings的问题!
- 如何从WEB服务器上传和下载文件?在线等待中。。。
- 关于SakEmail邮件接收问题
var
OpenPicDlg: TOpenPictureDialog;
Photo: TPicture;
Stream: TStream;
begin
OpenPicDlg:=TOpenPictureDialog.Create(Application);
OpenPicDlg.Filter:='All (*.jpg;*.jpeg;*.bmp)|*.jpg;*.jpeg;*.bmp';
if OpenPicDlg.Execute then
begin
Photo:=TPicture.Create;
Photo.LoadFromFile(OpenPicDlg.FileName);
DataSet.Edit;
Stream:=DataSet.CreateBlobStream(Field, bmWrite);
try
Photo.Graphic.SaveToStream(Stream);
finally
Stream.Free;
end;
DataSet.Post;
Photo.Free;
end;
OpenPicDlg.Free;
end;这是一个把照片保存到数据表字段中的过程,直接调用即可至于为什么Size=0除了别的原因外,还有ADO引擎的问题
TBlobField(ADOQuery1.FieldByName('')).SavetoStream(AStream);