string strsql = "select * from t_bas_user where usercode = :id";
            OleDbCommand cm = new OleDbCommand(strsql, conn);            //cm.Parameters.Add(new OleDbParameter("@id", OleDbType.VarChar, 50));
            //cm.Parameters["@id"].Value = Tbx_userid.Text;            OleDbParameter param = new OleDbParameter();
            param.ParameterName = "id";
            param.Value = Tbx_userid.Text;
            cm.Parameters.Add(param);            conn.Open();
OleDbDataReader dr=cm.ExecuteReader();
Dgd_userinformation.DataSource=dr;
Dgd_userinformation.DataBind();
            conn.Close();异常详细信息: System.Data.OleDb.OleDbException: ORA-01008: 并非所有变量都已绑定
请问是什么原因?

解决方案 »

  1.   

    param.ParameterName = "id"; 
    变量名写错了
      

  2.   

    要怎么写?
    @id 或 :id 都报错
      

  3.   

    string strsql = "select * from t_bas_user where usercode = @id";
    ...........
      

  4.   

    param.ParameterName = "@id"; 
      

  5.   

    string strsql = "select * from t_bas_user where usercode = :id";
    ........
    OleDbParameter param = new OleDbParameter(); 
    param.ParameterName = ":id";
    ........
      

  6.   


    用 :id 报错 
    System.Data.OleDb.OleDbException: ORA-01008: 并非所有变量都已绑定用 @id 报错 
    System.Data.OleDb.OleDbException: 在执行命令过程中,发生了一个或多个错误。
    ORA-00936: 缺失表达式