怎么用存储过程向一个不固定的表中插入图片 ( 积分: 30 )

  • 主题发起人 主题发起人 zxq3034
  • 开始时间 开始时间
Z

zxq3034

Unregistered / Unconfirmed
GUEST, unregistred user!
表的结构(其中表名Mypic不是固定的是有用户随便起的)
CREATE TABLE Mypic
(
id int primary key identity(1,1) not null,
tihao varchar(20),
Pic image NULL
)

存储过程我是这样写的,但这个image类型的不知道怎么去当做参数,请大家帮忙看一下,谢谢。
create procedure proc_insertpic
@pic image,@tihao varchar(20),@biaoMing varchar(50)
as
declare
@ss varchar(200)
set @ss='insert into '+@biaoMing+'(tihao,Pic) values('+@tihao+','+@pic+')'
--我知道这样写不对(+@pic)不能直接+但我不知道怎么去写
exec(@ss)

在delphi中我是这样写的
procedure TfrmMain.Button1Click(Sender: TObject);
begin
with adoquery1 do
begin
close;
//biaoming其中存放的是要插入图片的表
sql.Text :='exec proc_insertPic :pic,'''+edit1.text +''','''+biaoming+'''';
Parameters.ParamByName('****i').LoadFromStream(****iStream,ftBlob);
execsql;
end;
end;

怎么写才能完成这个功能呢?(用存储过程向一个不固定的表中插入图片)
 
比较急,请大空帮帮忙,看一下
 
怎么了这是,没有人回答呀,
说的不清楚??
 
这个问题挺难吗?
没有人会吗?
帮帮小弟吧!求你们了
 
procedure TForm1.ToolButton2Click(Sender: TObject);
var
MyJPEG: TJPEGImage;
MS: TMemoryStream;
begin
MyJpeg := TJpegImage.Create;
try
MyJpeg.Assign(Image1.Picture.Graphic);
MS := TMeMoryStream.Create;
MyJpeg.SaveToStream(Ms);
Ms.Position := 0;
ADOQuery1.Edit;
TBlobField(ADOQuery1.FieldByName('Image')).LoadFromStream(MS);
ADOQuery1.Post;
finally
MyJpeg.Free;
Ms.Free;
end;
//image1.Picture.Graphic:=nil;
end;
 
delphi中我会写,只是不知道这个存储过程怎么去写
 
在SQLserver中有一个image类型的变量 能与字符类型相连接组成一个字符串吗?
 
来个好心人帮帮小弟吧,我都快不行了,急呀!
困难是有一个表。这个表的名称是由用户给的,程序要向这个表中添加一些图片
各位高手帮帮忙吧,
 
就和一般的插入语句是一样的了
create procedure in_pic
@pic image,
@tihao varchar(20),
@biaoMing varchar(50)
as
declare
@sql varchar(8000)
select @sql='insert into '+@biaoming+' (tihao,Pic) values ('+@tihao+','+@pic+')'
exec(@sql)
 
to:xst945
谢谢你。
但是还是不行呀,这个存储过程不能创建呀。
出现错误:
服务器: 消息 403,级别 16,状态 1,过程 in_pic,行 8
对数据类型而言运算符无效。运算符为 add,类型为 image。


还是这个image类型不对
 
谢谢两位
chaofan201:你的方法和我想的不是一种方法,你的方法比较简单,谢谢你。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
790
import
I
回复
0
查看
795
爱音乐的孩子是小白
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部