请问如何把图片存入数据库中,然后读出来显示在picturebox中。
我还想问一下,对于这种情况,是把图片存入数据库好,还是把图片的路径存入数据库好?
那种方式比较好?
最后能给一段示范的代码?小弟谢了

解决方案 »

  1.   

    http://blog.csdn.net/alexzhang00/archive/2004/10/17/140317.aspx
      

  2.   

    http://dotnet.aspx.cc/ShowDetail.aspx?id=2A5DD7C6-A45A-48AB-A2E8-342A29F17506
    http://dotnet.aspx.cc/ShowDetail.aspx?id=ECD9AE16-8FF0-4A1C-9B9F-5E8B641CB1B1
      

  3.   

    数据库是用来索引和搜索的
    你存着图片用来 select 图片 from table where 图片 like '%花%' 吗?呵呵
    存着路径肯定好的多,瞧瞧SQL的书了解页是什么就知道了
      

  4.   

    '*** 先将二进制数据保存到buffer数组中
    dim buffer() as byte=....'*** 建立update命令及参数
    Dim cmd As New SqlClient.SqlCommand("update [table1] set [image]=@image where id=@id", Me.SqlConnection1)
    cmd.Parameters.Add(New SqlClient.SqlParameter("@image", SqlDbType.Image, Integer.MaxValue))
    cmd.Parameters.Add(New SqlClient.SqlParameter("@id", SqlDbType.Int))'*** 向参数赋值
    m_cmdUpdate.Parameters(0).Value = buffer
    m_cmdUpdate.Parameters(1).Value = ID'*** 执行update
    m_cmdUpdate.ExecuteNonQuery()这是我以前的例子clsPublicDB myDB=new clsPublicDB();
    SqlCommand myCmd=myDB.mySqlConn.CreateCommand();
    //
    //ID,ProviderID,BigClassID,Product,Price,VipPrice,StockNum,IsStock,spec,intro,description,addDate
    string strsql="insert into tProduct (ProviderID,BigClassID,Product,Price,VipPrice,StockNum,IsStock,spec,intro,descr,addDate,iscommend,photo) values "+
    "("+iProviderID+","+iClassifyID+",'"+this.txtProduct.Text.Trim()+"',"+this.txtPrice.Text.Trim()+","+this.txtVipPrice.Text.Trim()+","+intNum+","+isStock+",'"+this.txtSpec.Text.Trim()+"','"+this.txtIntro.Text.Trim()+"','"+this.txtDescription.Text.Trim()+"','"+DateTime.Now.ToShortDateString()+"',"+bCommend +",@photo)";
    myCmd.CommandText=strsql;
    FileStream file =  new  FileStream(sFile,FileMode.Open, FileAccess.Read);
    Byte[] bytBLOBData = new Byte[file.Length]; 
    file.Read(bytBLOBData, 0, bytBLOBData.Length);
    file.Close();
    SqlParameter prm=new SqlParameter("@photo",SqlDbType.VarBinary,bytBLOBData.Length,ParameterDirection.Input,false,0,0,null,DataRowVersion.Default,bytBLOBData);
    myCmd.Parameters.Add(prm);
    //olecommand.Parameters.Add(new OleDbParameter("jpeg",OleDbType.Binary,bytBLOBData.Length,ParameterDirection.Input,true,0,0,null,DataRowVersion.Default,bytBLOBData));
    myDB.subOpenSqlDbConn();//打开

    myCmd.ExecuteNonQuery();
    myDB.subCloseSqlDbConn();//关闭其中photo就是二进制类型,你可以参考以下
      

  5.   

    数据库中操作图片
    How To Read and Write BLOB Data by Using ADO.NET with Visual C# .NET
    http://support.microsoft.com/default.aspx?scid=kb;EN-US;309158
    把任意类型的文件保存到SQL Server
    http://dotnet.aspx.cc/ShowDetail.aspx?id=EY1XLDYV-PIDF-43LO-1WFL-FMY5ALE1F635