您的位置:首页 > 数据库

关于SqlServer2000 Image字段存储时应注意的问题

2006-12-07 10:33 323 查看
昨天在做图片往数据库里插入的时候发现了一个问题,我是用的
sqlcomm.CommandText = "insert into photo(photo) values(@photo)";
sqlcomm.Parameters.Add("@photo", SqlDbType.Image,16,"photo");
sqlcomm.Parameters["@photo"].Value = imgData;
其中imgData是转换好的图片数组
这段程序运行是 没有问题,但是我读出数据来的时候就错了
string sql = "select photo from photo where id="+this.textBox1.Text;
this.sqlcomm.CommandText = sql;
this.sqlconn.Open();
byte[] data = (byte[])this.sqlcomm.ExecuteScalar();
this.sqlconn.Close();
data的长度竟然是16!
因为长度不对,所以转换也就失败了!
我想长度是16肯定和数据库字段有关系,把添加参数写成
sqlcomm.Parameters.Add("@photo", SqlDbType.Image);
这样就没问题了!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: