C sharp - Problema DataReader y valor NULL

 
Vista:

Problema DataReader y valor NULL

Publicado por Alfonso (9 intervenciones) el 11/10/2005 10:01:09
Hola a todo el mundo tengo un problemilla con una sentencia SQL.
Quiero hacer un insert en una tabla. Los valores los leo de otra tabla y resulta que tengo una fecha que su valor tiene valor "NULL" estoy concatenando en una cadena todos los valores que quiero insertar y cuando concateno el la cadena "tipo string" con el valor null que ha leido me da un error que no se puede concatenar símbolos.

string datos = "(";

OdbcDataReader tOdbcDataReader_origen = tOdbcCommand_origen.ExecuteReader(CommandBehavior.SequentialAccess);

while (Reader_origen.Read()){

// el campos 31 es el que tiene el valor NULL pero en cuanto concateno me salta a
// un try catch que tengo anterior y me dice que no puede concatenar simbolos
// el campo del que se lee es un tipo fecha (date) y tiene valor NULL

datos = datos + Reader_origen.GetString(31);

}

Como puedo hacer para convertir ese NULL a string y que no me dé ningún error ????????? Alguna ayuda o código al respendo.

Gracias por leer este mensaje.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema DataReader y valor NULL

Publicado por Edgar (278 intervenciones) el 11/10/2005 15:25:17
Hola

Haz la siguiente prueba

object o = Reader_origen.GetValue(31);

datos = datos + ( o == null )?"":o.ToString();

Algo asi o parecido debe funcionar

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 158
Bronce
Ha disminuido 1 puesto en C sharp (en relación al último mes)
Gráfica de C sharp

RE:Problema DataReader y valor NULL

Publicado por Yamil Bracho (1164 intervenciones) el 12/10/2005 16:39:42
Usa isDBNull. Asi

datos = datos + ( Reader.ISDbNull(Reader_origen.GetString(31) ? "" : Reader_origen.GetString(31))

Otra sugerencia que te puedo dar es que en vez de concatenar a un String utilices un StringBuilder ya que es mas eficiente en terminos de manejo de memoria
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar