如何根据条件判断更新blob字段中的数据(100分)

  • 主题发起人 主题发起人 K
  • 开始时间 开始时间
K

K

Unregistered / Unconfirmed
GUEST, unregistred user!
如何根据条件判断更新blob字段中的数据
我已查询很多关于blob问题,有很多都是以下这么写的。
"var
Mem:TMemoryStream;
Mem := TMemoryStream.Create;
Mem.LoadFromFile(FileName);
Mem.Seek(0,soFromBeginning);
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('INSERT INTO BLOBNAME(NAME,FILENAMES) VALUES(:NAME,:FILENAMES)');
Query1.ParamByName('Name').AsString := FileName;
Query1.ParamByName('FileNAMES').LoadFromStream(Mem,ftBlob);
Query1.ExecSQL;
Mem.Free;"
我有2个问题:
1、"Query1.SQL.Add('INSERT INTO BLOBNAME(NAME,FILENAMES) VALUES(:NAME,:FILENAMES)');"
这句是插入一条新记录,如果要更新一个己存在的记录是否改成update就可以了?

2、"Mem.Seek(0,soFromBeginning);"这句是什么意思。
谢谢!
 
没人理我?
 
2。
你用 Mem := TMemoryStream.Create; 创建了一个内存块,这时Mem中的指针指向这个
内存块的起始地址,当你用了
Mem.LoadFromFile(FileName);
Mem的指针已经不指向起始地址了
所以用"Mem.Seek(0,soFromBeginning);"复位
 
谢谢lha
第1个问题有那位大侠告诉我,多谢。
 
》如果要更新一个己存在的记录是否改成update就可以了

是的,至少oracle 是可以的
 
可我用update时报错,我是将memo.line.text直接赋给blob字段.
应怎么写这条语句
 
后退
顶部