return PL/SQL CLOB to C#
Hola a todos, estoy trabajando con Oracle9i y C#.net
Tengo un procedure PL/SQL que tiene como parametro IN de tipo Clob
Este valor es para actualizar un campo de tipo Clob de una tabla.
Mi codigo es el siguiente:
string Trama;
OracleConnection conn = new OracleConnection();
conn.ConnectionString = "...connection string...";
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
cmd.CommandText = "sp_upd_titulo";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("param1",OracleType.VarChar).Value = "param1value";
cmd.Parameters.Add("param2", OracleType.Clob).Value = Trama
try
{
conn.Open();
cmd.ExecuteNonQuery();
}
catch( OracleException oraex )
{
MessageBox.Show(oraex.Message);
}
finally
{
cmd.Dispose();
conn.Close();
conn.Dispose();
}
Mi procedure pl/sql es parecido a:
procedure sp_upd_titulo(param1 in varchar2, param2 in clob) is
begin
update mitable set campo = param2 where param = param1;
end sp_upd_titulo;
CUANDO LO EJECUTO ME SALE EL SIGUIENTE ERROR: ORA-22923: la cantidad de datos
especificada en la escritura en flujo de LOB es 0
QUE PUEDO HACER???
Tengo un procedure PL/SQL que tiene como parametro IN de tipo Clob
Este valor es para actualizar un campo de tipo Clob de una tabla.
Mi codigo es el siguiente:
string Trama;
OracleConnection conn = new OracleConnection();
conn.ConnectionString = "...connection string...";
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
cmd.CommandText = "sp_upd_titulo";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("param1",OracleType.VarChar).Value = "param1value";
cmd.Parameters.Add("param2", OracleType.Clob).Value = Trama
try
{
conn.Open();
cmd.ExecuteNonQuery();
}
catch( OracleException oraex )
{
MessageBox.Show(oraex.Message);
}
finally
{
cmd.Dispose();
conn.Close();
conn.Dispose();
}
Mi procedure pl/sql es parecido a:
procedure sp_upd_titulo(param1 in varchar2, param2 in clob) is
begin
update mitable set campo = param2 where param = param1;
end sp_upd_titulo;
CUANDO LO EJECUTO ME SALE EL SIGUIENTE ERROR: ORA-22923: la cantidad de datos
especificada en la escritura en flujo de LOB es 0
QUE PUEDO HACER???
intentaste escribir el valor del LOB pero especificaste la entrada como cero, estás intentando escribir 0 bytes al LOB.
"que puedes hacer?" METERLE UN VALOR DIFERENTE DE 0 AL LOB JEJE
"que puedes hacer?" METERLE UN VALOR DIFERENTE DE 0 AL LOB JEJE
