现在添加和读取会的,就是如何修改不知道,请教
添加with qry1 do
begin
bphoto:=Tbitmap.Create;
MS:=TMemoryStream.Create ;
bphoto.Assign(Img2.Picture.Graphic);
bphoto.SaveToStream(MS);
MS.Position :=0;
qry1.Append;
TBlobField(Fields[6]).LoadFromStream(ms);
FieldByName('Name').AsString:=edt_Name.Text;
FieldByName('Pwd').asstring:=edt_NPwd.Text;
FieldByName('PowerValue').asstring:=cbb_PowerValue.Text;
FieldByName('Sn').asstring:=edt_Sn.Text;
FieldByName('Dep').Asstring:=cbb_Dep.Text;
FieldByName('Phone').asstring:=edt_Phone.Text;
FieldByName('Email').asstring:=edt_Email.Text;
FieldByName('Re').asstring:=edt_Re.Text;
FieldByName('CardID').asstring:=edt_CardID.Text;
MS.Free ;
bphoto.Free ;
try
Post ;
except
on E:Exception do
begin
Application.MessageBox(PChar('操作遇到错误被终止,系统返回的错误信息如下:'+#13+#13+E.Message) ,'操作失败',Mb_OK+Mb_IconInformation);
Close;
end;
end;
end; 读取 if not Eof then
begin
Prior;
edt_Name.Text:= FieldByName('Name').AsString;
edt_Sn.Text:= FieldByName('Sn').AsString;
edt_CardID.Text:= FieldByName('CardID').AsString;
cbb_Dep.Text:= FieldByName('Dep').AsString;
cbb_PowerValue.Text:= FieldByName('PowerValue').AsString;
edt_Phone.Text:= FieldByName('Phone').AsString;
edt_Email.Text:= FieldByName('EMail').AsString;
edt_Re.Text:= FieldByName('Re').AsString;
Img2.Picture.Assign(FieldByName('Photo'));
end;
问题一:
在添加代码中的TBlobField(Fields[6]).LoadFromStream(ms);这句不能改为FieldByName('Photo'),
如果要使用FieldByName,如何操作?问题二:
修改的提交,怎么写?
添加with qry1 do
begin
bphoto:=Tbitmap.Create;
MS:=TMemoryStream.Create ;
bphoto.Assign(Img2.Picture.Graphic);
bphoto.SaveToStream(MS);
MS.Position :=0;
qry1.Append;
TBlobField(Fields[6]).LoadFromStream(ms);
FieldByName('Name').AsString:=edt_Name.Text;
FieldByName('Pwd').asstring:=edt_NPwd.Text;
FieldByName('PowerValue').asstring:=cbb_PowerValue.Text;
FieldByName('Sn').asstring:=edt_Sn.Text;
FieldByName('Dep').Asstring:=cbb_Dep.Text;
FieldByName('Phone').asstring:=edt_Phone.Text;
FieldByName('Email').asstring:=edt_Email.Text;
FieldByName('Re').asstring:=edt_Re.Text;
FieldByName('CardID').asstring:=edt_CardID.Text;
MS.Free ;
bphoto.Free ;
try
Post ;
except
on E:Exception do
begin
Application.MessageBox(PChar('操作遇到错误被终止,系统返回的错误信息如下:'+#13+#13+E.Message) ,'操作失败',Mb_OK+Mb_IconInformation);
Close;
end;
end;
end; 读取 if not Eof then
begin
Prior;
edt_Name.Text:= FieldByName('Name').AsString;
edt_Sn.Text:= FieldByName('Sn').AsString;
edt_CardID.Text:= FieldByName('CardID').AsString;
cbb_Dep.Text:= FieldByName('Dep').AsString;
cbb_PowerValue.Text:= FieldByName('PowerValue').AsString;
edt_Phone.Text:= FieldByName('Phone').AsString;
edt_Email.Text:= FieldByName('EMail').AsString;
edt_Re.Text:= FieldByName('Re').AsString;
Img2.Picture.Assign(FieldByName('Photo'));
end;
问题一:
在添加代码中的TBlobField(Fields[6]).LoadFromStream(ms);这句不能改为FieldByName('Photo'),
如果要使用FieldByName,如何操作?问题二:
修改的提交,怎么写?
修改不能直接修改FieldByName('Photo')你需要读到ms里面,修改后再TBlobField(FieldByName('Photo')).LoadFromStream(ms);一次就可以了