上传 会的吧因该很简单的哦显示的话 你可以先从数据库里面读取 二进制 流 然后用
Graphics对象 把它画 出来

解决方案 »

  1.   

    给一个sql server的例子:oracle应该差不多吧;//存入图片
    private void Button1_Click(object sender, System.EventArgs e)
    {SqlConnection con = new SqlConnection("Server=ss;uid=sa;pwd=;database=northwind");
    SqlDataAdapter da = new SqlDataAdapter("Select * From MyImages", con);
    SqlCommandBuilder MyCB = new SqlCommandBuilder(da);
    DataSet ds = new DataSet("MyImages");
    da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
    FileStream fs = new FileStream(@"d:\a.jpg", FileMode.OpenOrCreate, FileAccess.Read);
    byte[] MyData= new byte[fs.Length];
    fs.Read(MyData, 0, System.Convert.ToInt32(fs.Length));
    fs.Close();
    da.Fill(ds,"MyImages");
    DataRow myRow=ds.Tables["MyImages"].NewRow();
    myRow["Description"] = "This would be description text";
    myRow["imgField"] = MyData;
    ds.Tables["MyImages"].Rows.Add(myRow);
    da.Update(ds, "MyImages");
    con.Close();}//取出图片
    private void Button2_Click(object sender, System.EventArgs e)
    {
    SqlConnection con = new SqlConnection("Server=ss;uid=sa;pwd=;database=northwind");
    SqlDataAdapter da = new SqlDataAdapter("Select * From MyImages",con);
    SqlCommandBuilder MyCB = new SqlCommandBuilder(da);
    DataSet ds = new DataSet("MyImages");
    byte[] MyData= new byte[0];
    da.Fill(ds,"MyImages");
    DataRow myRow=ds.Tables["MyImages"].Rows[0];
    MyData=(byte[])myRow["imgField"];
    int ArraySize = new int();
    ArraySize = MyData.GetUpperBound(0); 
    FileStream fs = new FileStream(@"d:\b.jpg", 
    FileMode.OpenOrCreate, FileAccess.Write);
    fs.Write(MyData, 0,ArraySize);
    fs.Close();
    }