picturebox最好了
然后编程二进制流传到数据库中

解决方案 »

  1.   

    参考一下:
    OleDbConnection mycnn=new OleDbConnection("provider=Microsoft.jet.oledb.4.0;data source=f:\\dazhu.mdb");
    mycnn.Open();

     OleDbCommand mycmd=new OleDbCommand("update info set picture=@a",mycnn );

    FileStream mystream=new FileStream("f:\\1.jpg",FileMode.Open,FileAccess.Read);
    long len=mystream.Length;

    mycmd.Parameters.Add("@a",OleDbType.Binary,(int)len,"picture");
    mycmd.Parameters["@a"].Direction=System.Data.ParameterDirection.Input;
               
    byte []box=new byte[len];

               
    mystream.Read(box,0,(int)len);

    mycmd.Parameters["@a"].Value=box; //更新
    mycmd.ExecuteNonQuery();
    MessageBox.Show("ok");
    mystream.Close();
    mycnn.Close();
      

  2.   

    ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/cpguide/html/cpconconservingresourceswhenwritingblobvaluestosqlserver.htm
    在msdn中一个比较经典的二进制大对象保存到数据库的方法,这个方法可以节约系统的开销并且在流文件太大时可以保证程序不崩溃(如果这个流>2G)