各位朋友,小弟有一个表,结构如下:
姓名(类型:varchar(10))
图像(类型:image)假如存储过程如下:
create procedure InsertRecord
@name varchar(10),
@image image
as
insert 表(姓名,图像) values(@name, @image)现DELPHI窗体上有一个IMAGE的控件,里面有一幅图像,有一个EDIT,是保存姓名的,假如用ADOQUERY,怎样写插入语句,调用该存储过程,才能将当前记录插入到数据库里呢?
另外,假如在查找记录的时候,在查找到该记录后,怎样写赋值语句,才能将数据库里面的图像字段赋值给IMAGE,使IMAGE可以显示数据库里面的图像呢?请论坛上的各位朋友赐教,谢谢!!!
姓名(类型:varchar(10))
图像(类型:image)假如存储过程如下:
create procedure InsertRecord
@name varchar(10),
@image image
as
insert 表(姓名,图像) values(@name, @image)现DELPHI窗体上有一个IMAGE的控件,里面有一幅图像,有一个EDIT,是保存姓名的,假如用ADOQUERY,怎样写插入语句,调用该存储过程,才能将当前记录插入到数据库里呢?
另外,假如在查找记录的时候,在查找到该记录后,怎样写赋值语句,才能将数据库里面的图像字段赋值给IMAGE,使IMAGE可以显示数据库里面的图像呢?请论坛上的各位朋友赐教,谢谢!!!
var Mem : TMemoryStream;
FileName :string;
begin
if OpenPictureDialog1.Execute then
begin
Mem := TMemoryStream.Create;
Mem.LoadFromFile(FileName);
Mem.Position:=0;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(' insert into 人员 (人员编号,照片) VALUES (:nameid,:FILENAMES)');
// adoquery1.Parameters.Add;
adoquery1.Parameters[0].Value :='111012';
// adoquery1.Parameters.Add;
adoquery1.Parameters[1].LoadFromStream(Mem,ftblob);
try
adoquery1.ExecSQL;
finally
Mem.Free;
end;
提出图片可以直接使用Picture.Assign(FieldByName(FieldName));