openFileDialog1.Filter = "*.JPG|*.JPG";
            if (openFileDialog1.ShowDialog(this) == DialogResult.OK)
            {
                pictureBox1.ImageLocation = openFileDialog1.FileName;
                textBox2.Text = openFileDialog1.FileName;
                FileStream myFile = new FileStream(openFileDialog1.FileName, FileMode.Open);
                int length = (int)myFile.Length;
                image = new byte[length];
                myFile.Read(image, 0, length);
            }string sqlstr = "insert into student(image) values('" + System.Text.ASCIIEncoding.ASCII.GetString(image) + "')";
                myService.insertValue(sqlstr);public void insertValue(string sqlstr)
        {
            myOpen();
            OracleCommand myCommand = new OracleCommand(sqlstr,myConnection);
            myCommand.ExecuteNonQuery();
            myClose();
        }我是这样写的,但是运行报错,哪位大哥帮我看看,应该怎么写?

解决方案 »

  1.   

    string sqlstr = "insert into student(image) values(:imgs);
    oracleparameters params={
    new oracleparameters(":imgs",dbtype.blob)
    };
    params[0].value=File.ReadAllBytes("e:\aaa.jpg");
    oracleconnection con=new oracleconnection("connnectionstring");
    oraclecomand cmd=new oraclecommand(sqlstr,con);
    cmd.parameters.add(params[0]);
    cmd.executeNonQuery();
    ....
    大概是这个样子,希望有用了!
      

  2.   

    用参数方式,直接存byte数组
      
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/