我的同事用类似的方法在PB中实现过这样的功能。但是我想请教一下,在DELPHI中就没有别的方法一次性完成存入么。
解决方案 »
- DBGRIDEH 数值显示
- 离职回家休息,来了结贴
- 谁能救救我:Tedit 的onkeypress事件没有响应
- 帮我看看这段代码哪里错了@@关于动态加载DLL的问题:郁闷!!!
- 调查报表问题。
- 请问:哪里有用中文详细介绍delphi控件属性,方法,事件的书籍资料可看?
- 如何将图存入表中?
- (高手请进)关于在程序运行期间把一个字符串转换成代码来执行
- ★★★★★和大家讨论一下如何往数据库中保存一个大字段(比如文件)★★★★★
- Delphi中可否调用VC编写的动态链接库,还是要单独做?
- 一个关于数据库导入的问题。
- 我想设计一个定时器,比如定时15.20.35.45.80.190.分钟后关机,不知如何计算?请指教,我是个初学者,先谢过了。
第一次insert,以后update
原因还是在BDE里面。解决方法如下:
在BDE ADMINISTRATOR的CONFIGURATION页里,打开到SYSTEM的INIT里面,其中有个MAXBUFSIZE选择项,将其改为你想存取数据的大小就可以解决这个问题,DATABASE页的BLOB SIZE也最好改一下。如果你用的是DB2要把DB2的性能中的query heap也要设置成你想存放数据的大小,否则会报“堆溢出”。
这样的话,问题就可以解决了。肯定可以,因为我试过的。
Oracle表只支持一个Blob字段的。
痛苦呀,谁知道如何将一组小文件组合成一完整的大文件。切割的代码如下procedure TForm1.Button1Click(Sender: TObject);
var m,n,j:tmemorystream;
s:string;
s1,s2:string;
begin
if OpenDialog1.Execute then
begin
m:=tmemorystream.Create;
m.LoadFromFile(OpenDialog1.filename);
edit1.text:=inttostr(m.Size);
//m.Free;
setlength(s,m.size);
n:=tmemorystream.Create;
j:=tmemorystream.Create;
n.SetSize(m.size-32768);
j.setsize(32768);
//move(m.memory^,pchar(s)^,m.size);
move(m.memory^,j.memory^,32768);
//m.Position:=m.Position+32768;
edit2.Text:=inttostr(m.position);
move(m.memory^,n.memory^,m.size-32768);
edit2.text:=inttostr(n.size); j.SaveToFile('c:\001.swf');
n.SaveToFile('c:\002.swf');
m.free;
n.Free;
j.free;
end;
end;
m,n,j:tmemorystream;
i,k:integer;
begin
m:=tmemorystream.Create;
m.LoadFromFile('c:\001.txt');
n:= tmemorystream.Create;
n.LoadFromFile('c:\002.txt');
j:=tmemorystream.Create;
i:=m.Size;
k:=n.Size;
j.SetSize(i+k);
move(m.memory^,j.memory^,m.Size);
move(n.memory^,j.memory^,m.Size);
j.SaveToFile('c:\test.txt');
showmessage('OK!');