什么是内部 .Net Framework 数据提供程序错误 30。

string conn = @"Data Source=orcl;User ID=system;Password=123;Unicode=True";
OracleConnection connection = new OracleConnection(conn);
if (connection.State != ConnectionState.Open)
{
connection.Open();
}

        OracleCommand cmd = new OracleCommand();
        //string sql = " insert into phone(Pname,Pmodel,Price) VALUES(@name,@model,@price)";
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "phonea";
        cmd.Connection = connection;
        OracleParameter[] p = new OracleParameter[]
        {
            new OracleParameter(":name",txtName.Text),
            new OracleParameter(":model",txtModel.Text),
            new OracleParameter(":price",txtPrice.Text)
        };
        foreach (OracleParameter op in p)
        {
            cmd.Parameters.Add(op);
        }
        cmd.ExecuteScalar();
        MessageBox.Show("添加成功");
                    这是什么原因啊?

cmd.CommandText = "phonea"; --->
cmd.CommandText = " insert into phone(Pname,Pmodel,Price) VALUES(:name,:model,:price)";