SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: vbmc_2004 en Jueves 11 de Noviembre de 2004, 07:14

Título: Existe La Posibilidad De!!!
Publicado por: vbmc_2004 en Jueves 11 de Noviembre de 2004, 07:14
Hola soy yo de nuevo... una pregunta como puedo controlar una consulta sql a una base de datos en sql...... que cuando le digo que me muestre los datos y alguno de esos campos esta nulo no me muestre el error??? osea que me lo detecte antes de que me de el error y se vaya por otro lado??? entienden la pregunta???

salu2 y gracias
Título: Re: Existe La Posibilidad De!!!
Publicado por: ROBER.29 en Jueves 11 de Noviembre de 2004, 09:55
Hola,

Para comprobar si una consulta te a devuelto datos basta con comprobar que el RecordSet no esté vacío y en caso de que no esté vacío para comprobar que algún campo no contiene nulos se hace de la siguiente forma:

Código: Text
  1.  
  2. If Not rsAux.EOF Then 'Compruebo que el recordset no este vacío
  3.      If Not IsNull(rsAux("nombre_campo")) Then 'Compruebo que el campo no contenga nulos
  4.           Msgbox "El valor del campo es: "rsAux("nombre_campo")
  5.      Else
  6.           Msgbox "El campo contiene nulos"
  7.      End If
  8. Else
  9.      Msgbox "La consulta no ha devuelto ningún dato"
  10. End If
  11.  
  12.  

En el caso de que el campo sea de tipo char, varchar, nvarchar, ... (es decir de tipo texto), la comprobación de si el campo contiene nulos no es válida, ya que los campos de tipo texto nunca contienen el valor null, por lo tanto lo deberías de comprobar de la siguiente forma:

Código: Text
  1.  
  2. If Not rsAux.EOF Then 'Compruebo que el recordset no este vacío
  3.      If rsAux("nombre_campo") <> "" Then 'Compruebo que el campo no esté vacío
  4.           Msgbox "El valor del campo es: "rsAux("nombre_campo")
  5.      Else
  6.           Msgbox "El campo esta vacío"
  7.      End If
  8. Else
  9.      Msgbox "La consulta no ha devuelto ningún dato"
  10. End If
  11.  
  12.  

Un saludo.
Título: Re: Existe La Posibilidad De!!!
Publicado por: Sagutxo en Jueves 11 de Noviembre de 2004, 11:11
Salu2.  :hola:
   No estoy seguro de que esto funcione con sql. pero no pierdes casi nada con prorarlo.

Guarda tus campos de la base de datos dandoles valor:

CampoTabla= "" & VarGuardar

y al recuperar =:

VarRecupero= "" & CampoTabla


Espero que te sirva de algo. Suerte
 :comp: