图片保存到数据库问题

slyly 2006-01-17 09:37:30
表中有一字段用于保存图片(image类型),下面是把图片插入数据库的代码:

MemoryStream picStream = new MemoryStream();
byte[] pic = null;
int len = 0;
if(pictureBox1.Image != null)
{
pictureBox1.Image.Save(picStream,System.Drawing.Imaging.ImageFormat.Jpeg);
len = (int)picStream.Length;
pic = picStream.ToArray();
picStream.Close();
}
.....
SqlParameter parm = dbOp.MakeInParm("@员工照片", SqlDbType.Image, len,photo);
.....
objComm.Parameters.Add(parm);
.....

存储过程:
CREATE PROCEDURE [UP_PERSON_DOCUMENT]
(@OPER [varchar](10),
@编号 [numeric],
@姓名 [varchar](20),
@部门 [varchar](50),
@年龄 [int],
@性别 [varchar](5),
@职务 [varchar](50),
@职称 [varchar](50),
@学历 [varchar](50),
@专业 [varchar](50),
@民族 [varchar](50),
@婚否 [varchar](10),
@生日 [datetime],
@基本工资 [numeric],
@政治面貌 [varchar](50),
@毕业院校 [varchar](100),
@调入日期 [datetime],
@起薪日期 [datetime],
@工龄 [numeric],
@本单位工龄 [numeric],
@电话 [varchar](50),
@手机 [varchar](20),
@身份证号码 [varchar](50),
@籍贯 [varchar](100),
@现住址 [varchar](200),
@备注 [varchar](500),
@员工照片 [image]
)

AS
IF @OPER = 'INSERT'
BEGIN
INSERT INTO [DBCHO].[dbo].[PERSON_DOCUMENT]
( [姓名],
[部门],
[年龄],
[性别],
[职务],
[职称],
[学历],
[专业],
[民族],
[婚否],
[生日],
[基本工资],
[政治面貌],
[毕业院校],
[调入日期],
[起薪日期],
[工龄],
[本单位工龄],
[电话],
[手机],
[身份证号码],
[籍贯],
[现住址],
[备注],[员工照片])

VALUES
( @姓名,
@部门,
@年龄,
@性别,
@职务,
@职称,
@学历,
@专业,
@民族,
@婚否,
@生日,
@基本工资,
@政治面貌,
@毕业院校,
@调入日期,
@起薪日期,
@工龄,
@本单位工龄,
@电话,
@手机,
@身份证号码,
@籍贯,
@现住址,
@备注,@员工照片)
END
GO
这段代码在pictureBox1有图片时完全没问题,但当没有图片时就出错.错误如下:
==========================================
存储过程要求"@员工照片",但未提供该差数
==========================================
...全文
212 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
slyly 2006-01-17
  • 打赏
  • 举报
回复
搞定,谢谢!
yinwun 2006-01-17
  • 打赏
  • 举报
回复
@员工照片 [image] = null
加一个初始值

110,585

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧