image 本身二进制 与 存入数据库中 二进制 不相等 求解 本帖最后由 letianzuin4 于 2013-03-23 11:34:59 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 存图片的代码有问题,你没有发现你数据库读出来的图片只有21个字节么?那21个字节表示的字符串是:System.Drawing.Bitmap研究研究怎么存图片到数据库吧:http://wenku.baidu.com/view/8e014f235901020207409cc6.html string ConStr = "server=(local);user id=sa;pwd=sa;database=test"; SqlConnection conn = new SqlConnection(ConStr); string strSql = "Insert into piclist(pic) values(@pic)"; SqlCommand cmd = new SqlCommand(strSql, conn); cmd.Parameters.Add("@pic", SqlDbType.Image); cmd.Parameters["@pic"].Value = PhotoArray;//PhotoArray是byte数组,即二进制数据 conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); string sqlstr = "update [Base_TeacherInfo] set " + " [pic]='" + i + "'" + " where [ID] ='1' ";你这行实际执行的SQL语句是update [Base_TeacherInfo] set [pic]='System.Drawing.Bitmap' where [ID] ='1'在字符串表达式中会自动调用变量的ToString方法,并不会把Image对象的二进制数据写在那里。 貌似你sql语句也有点问题。"update [Base_TeacherInfo] set "+ " [pic]='" + i + "'"+ " where [ID] ='1' ";你的i两边都有''符号。这就是转换成字符串的标记。二进制数据也是数字,而sql语句中数字是不需要打''的 VS2008添加项目数据源的时候总是出错怎么回事呢. winform下题库管理系统中显示用什么控件 wpf 游戏 请教一个数组的基本问题,多谢多谢 请问c#控制台程序,能输出反显的字符吗? 用C#实现语法标色功能 Lucene.net索引文档删除问题 在线等待:运行一个winform程序后,如何能自动打开一个IE窗口? 急,C#.Net开发的程序在XP上运行秒退 .NET下,有什么好的Object-Relation DB 的 Framework吗?那个最好? C# 修改密码功能 无聊编的一个小软件
System.Drawing.Bitmap
研究研究怎么存图片到数据库吧:http://wenku.baidu.com/view/8e014f235901020207409cc6.html
SqlConnection conn = new SqlConnection(ConStr);
string strSql = "Insert into piclist(pic) values(@pic)";
SqlCommand cmd = new SqlCommand(strSql, conn);
cmd.Parameters.Add("@pic", SqlDbType.Image);
cmd.Parameters["@pic"].Value = PhotoArray;//PhotoArray是byte数组,即二进制数据
conn.Open();
cmd.ExecuteNonQuery();
conn.Close(); string sqlstr = "update [Base_TeacherInfo] set "
+ " [pic]='" + i + "'"
+ " where [ID] ='1' ";
你这行实际执行的SQL语句是update [Base_TeacherInfo] set [pic]='System.Drawing.Bitmap' where [ID]
='1'
在字符串表达式中会自动调用变量的ToString方法,并不会把Image对象的二进制数据写在那里。
"update [Base_TeacherInfo] set "+ " [pic]='" + i + "'"+ " where [ID] ='1' ";
你的i两边都有''符号。这就是转换成字符串的标记。二进制数据也是数字,而sql语句中数字是不需要打''的