tryOracleCommand addEmp = new OracleCommand("INSERT INTO Doc (ID, DocName) Values(:ID1, :DocName1)", nwindConn);

解决方案 »

  1.   

    //OracleCommand addEmp = new OracleCommand("INSERT INTO Doc (ID, DocName) Values(@ID1, @DocName1)", nwindConn); 改为
    OracleCommand addEmp = new OracleCommand("INSERT INTO Doc (ID, DocName) Values(:ID1, :DocName1)", nwindConn); 再试试!
      

  2.   

    OracleConnection 是一個類嗎?
    是哪個版本的VS才有嗎?
      

  3.   

    谢谢,上面的第一个问题按saucer和 redebug的方法得到了解决,但是我是否可以按照此方法直接传递BLOB字段,比如:OracleCommand addEmp = new OracleCommand("INSERT INTO Doc (ID, DocName,DocContent) Values(:ID, :DocName,:DocContent)", nwindConn);  addEmp.Parameters.Add("ID",  OracleType.Number, 4).Value = 1;
    addEmp.Parameters.Add("DocName", OracleType.VarChar, 30).Value = "firstName";
    addEmp.Parameters.Add("DocContent", OracleType.Blob, docbyte.Length).Value = docbyte;其中变量docbyte为word文档的byte[]类型,通过以下方法获取:
    private byte[] GetTemplate()
    {
        FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);    BinaryReader br = new BinaryReader(fs);    byte[] photo = br.ReadBytes((int)fs.Length);    br.Close();
        fs.Close();    return photo;
    }
      

  4.   

    我自己试过了,执行时提示:ORA-03212: 无法在本地管理的表空间创建临时段。
    不知是什么原因?