c# picturebox 照片转为二进制sql
如题:**语言:C#**数据库:SQL2008**问题:现已通过openfiledialog将照片显示到picturebox中,下一步打算将picturebox中的照片,...
如题:
**语言:C#
**数据库:SQL 2008
**问题:现已通过openfiledialog将照片显示到picturebox中,下一步打算将picturebox中的照片,第一步,转为二进制流;第二步,存入SQL中。
**出错提示:ExecuteNonQuery: Connection 属性尚未初始化。
**代码说明:
这句话:string sql = "update [" + biaoming + "] set photo=@img where Name='" +PicName+ "'";
biaoming 以及 PicName,分别是SQL中表格名和具体行数的ID(1,2,3....),二者都是通过复选框选择的。
**怀疑:请问大家指教,是不是sql语言出问题了?
代码如下:
string PicName = cbx照片名字.Text;
string biaoming = cbx表名.Text;
string sql = "update [" + biaoming + "] set photo=@img where Name='" +PicName+ "'";
SqlCommand cmd = new SqlCommand(sql);
PICBOX.Image.Save("a.bmp");
System.IO.FileStream fileStream = new System.IO.FileStream("a.bmp", FileMode.Open, FileAccess.Read);
BinaryReader binaryReader = new BinaryReader(fileStream);
byte[] img = binaryReader.ReadBytes((int)fileStream.Length);
binaryReader.Close();
fileStream.Close();
File.Delete("a.bmp");//此阶段所得img即为照片的二进制数组
SqlParameter sp = new SqlParameter("@photo", "img");
cmd.Parameters.Add(sp);
sp = new SqlParameter("@Name", "PicName");
cmd.Parameters.Add(sp);
int i = cmd.ExecuteNonQuery();
MessageBox.Show(i.ToString()); 展开
**语言:C#
**数据库:SQL 2008
**问题:现已通过openfiledialog将照片显示到picturebox中,下一步打算将picturebox中的照片,第一步,转为二进制流;第二步,存入SQL中。
**出错提示:ExecuteNonQuery: Connection 属性尚未初始化。
**代码说明:
这句话:string sql = "update [" + biaoming + "] set photo=@img where Name='" +PicName+ "'";
biaoming 以及 PicName,分别是SQL中表格名和具体行数的ID(1,2,3....),二者都是通过复选框选择的。
**怀疑:请问大家指教,是不是sql语言出问题了?
代码如下:
string PicName = cbx照片名字.Text;
string biaoming = cbx表名.Text;
string sql = "update [" + biaoming + "] set photo=@img where Name='" +PicName+ "'";
SqlCommand cmd = new SqlCommand(sql);
PICBOX.Image.Save("a.bmp");
System.IO.FileStream fileStream = new System.IO.FileStream("a.bmp", FileMode.Open, FileAccess.Read);
BinaryReader binaryReader = new BinaryReader(fileStream);
byte[] img = binaryReader.ReadBytes((int)fileStream.Length);
binaryReader.Close();
fileStream.Close();
File.Delete("a.bmp");//此阶段所得img即为照片的二进制数组
SqlParameter sp = new SqlParameter("@photo", "img");
cmd.Parameters.Add(sp);
sp = new SqlParameter("@Name", "PicName");
cmd.Parameters.Add(sp);
int i = cmd.ExecuteNonQuery();
MessageBox.Show(i.ToString()); 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询