This is a multi-part message in MIME format.
------=_NextPart_000_00D0_01C1E7A3.FF14E710
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
si, es correcto, Yo no dije que no...
----- Original Message -----
From: Jose Ramon Suero Paulino
To: ASP.Net en Espa=F1ol
Sent: Friday, April 19, 2002 1:02 PM
Subject: [aspx_espanol] Re: DataReader vacio?
Vamos a explicarte mejor, tienes un "select * from clientes"
despues de ejecutar tu data reader haces lo siguiente
if DataReader.Read() then
' Hay registros y estamos en el 1ro
' Imprimes tu encabezado aqui si lo tienes que hacer
do ' Aun estamos en el primero y no hemos avanzado al segundo en
el primer paso
' imprimes el registro actual ej.
Response.Write(DataReader("codigo").ToString())
loop while DataReader.Read() ' tambien Loop Until not
DataReader.Read()
'En la linea anterior si puedes avanzar en tu tabla,
' vuelves al while/until hasta que no se pueda seguir avanzando
else
'No hay registros
end if
Intenta con eso plis a mi me funciona
Jose Ramon Suero Paulino
.NET Student
----Original Message Follows----
From: "Valeria Lasagna"
Reply-To: "ASP.Net en Espa=F1ol"
To: "ASP.Net en Espa=F1ol"
Subject: [aspx_espanol] Re: DataReader vacio?
Date: Fri, 19 Apr 2002 11:49:40 -0300
Si, pero al poner If mireader.Read() ya avanzo al proximo registro, y
cuando realmente tengo que usar ese registro dentro
de la sentencia IF (dentro de un While por ejemplo que recorre el
datareader desde el principio), ya lo perdi...!
Necesito saber en realidad lo de la propiedad FieldCount por que no
anda...que segun las msdn, funciona de la manera
que ya les conte.. Si alguien uso esta propiedad, les agradezco que me
digan como.
Gracias, Valeria.
----- Original Message -----
From: juan
To: ASP.Net en Espa=F1ol
Sent: Friday, April 19, 2002 5:38 AM
Subject: [aspx_espanol] Re: DataReader vacio?
hola, tambien yo me preguntaba como encontrar un equivalente para
saber el equivalente en asp que el recordset tuviera datos.
Efectivamente cuando utilizas la propiedad read() de un datareader te
avanza un lugar en los datos pero tambien has de tener en cuenta tal
como pone en el sdk "The default position of the SqlDataReader is prior
to the first record. Therefore, you must call Read to begin accessing
any data", asi que utilizando la primera vez read() si que te dice si el
datareader tiene datos o no. En alguna aplicaci=F3n lo pongo tal que de
esta manera para saber si la instruccion select me devuelve algun dato:
miSqlCommand.CommandText =3DstrSqlTot
mireader=3DmiSqlCommand.ExecuteReader()
If mireader.Read() Then
espero te sirva, saludos
juan
Valeria Lasagna escribi=F3:
Hola Octavio, muchas gracias por responder. Te cuento lo que lei en
las msdn (y comprobe despues) del RecordsAffected,
solo anda para sentencias que no sean select ( o sea update, insert o
delete. )
Ahora lo que es ilogico es el comportamiento de la propiedad
Fieldcount porque dice que si el query no trae
datos te devuelve 0 (cosa que no hace y devuelve la cantidad de campos
del query) indistintemente de la sentencia que
se usa en el query e indistintamente si hay datos o no en el
datareader. Mira lo que encontre para el fielcoutn en las msdn:
Remarks
After executing a query that does not return rows, FieldCount returns
0.
El FieldCount es lo mas parecido al RecordCount de asp que encontr=E9.
Cuando programaba asp el Recordcount daba siempre -1 si no usaba un
archivo
donde se establecian una serie de constantes que se necesitaban.
Me pregunto si aca no estara pasando algo por el estilo...? Si alguien
sabe algo, por favor avisenme..
Gracias y saludos, Valeria.
---
Usted est=E1 suscrito a aspx_espanol como:
valerial@f...
Para darse de baja, env=EDe un mensaje en blanco a
%%email.unsub%%
---
Usted est=E1 suscrito a aspx_espanol como:
jose_suero@h...
Para darse de baja, env=EDe un mensaje en blanco a
%%email.unsub%%
-------------------------------------------------------------------------
-----
Join the world's largest e-mail service with MSN Hotmail. Click Here
---
Usted est=E1 suscrito a aspx_espanol como:
valerial@f...
Para darse de baja, env=EDe un mensaje en blanco a
%%email.unsub%%