Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-06-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 28
Caral Va por buen camino
Hola maeyanes
Y si es asi, no le falta esto ! a su codigo, o es que no lo necesita.?, o es que esta en otra posicion.
La verdad es pura curiosidad, ya se por que nunca pude aprender C, y asta me compre un librito de 500 paginas. , muy complicado para mi.
Saludos
Responder Con Cita
  #2  
Antiguo 04-06-2007
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 26
maeyanes Va por buen camino
El detalle es que el hace la comparación de otra forma...

Usa el operador != que sería el <> de Delphi...

Código:
while (this->ADODataSet1->Eof != true)

Saludos
Responder Con Cita
  #3  
Antiguo 04-06-2007
LordSarevok LordSarevok is offline
Miembro
 
Registrado: abr 2007
Posts: 16
Poder: 0
LordSarevok Va por buen camino
Sale un cuadro de dialogo con este error:

"Project raised exception class EOleException with message "El valor de BOF o EOF es True, o el actual registro se elimino, la operacion solicitada requiere un registro actual, process stoped...."

Os iba a poner la imagen del cuadro, pero imageshack no quiere que le suba nada xD, gracias .
Responder Con Cita
  #4  
Antiguo 04-06-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 28
Caral Va por buen camino
Hola
Que bien, me estoy metiendo en camisa de once varas.
Que pasaria si hicieramos esto, en la linea de While:

Código Delphi [-]
this->ADOConnection1->Connected=true;  
this->ADODataSet1->Connection=this->ADOConnection1;
this->ADODataSet1->ConnectionString=this->ADOConnection1->ConnectionString;
this->ADODataSet1->CommandText="Select * from tabla";
this->ADODataSet1->Active=true;
this->ADODataSet1->Open();
      while (!this->ADODataSet1->Eof)
  {
      this->ADODataSet1->FieldByName("nombre")->AsString);
      this->ADODataSet1->Next();
  }
this->ADODataSet1->Close(); //Aqui da el error
Por algun lado es, el mensaje dice que encontro true, creo que lo confunde con un dato.
Saludos
Responder Con Cita
  #5  
Antiguo 05-06-2007
LordSarevok LordSarevok is offline
Miembro
 
Registrado: abr 2007
Posts: 16
Poder: 0
LordSarevok Va por buen camino
el !this->ADODataSet1->Eof es igual que el this->ADODataSet1->Eof!=true, es como el i++ o el i=i+1; aunque se escriban de forma diferente, funcionan igual, no es mas que una comodidad para el programador (vamos eso creo). Yo uso el !=true porque me gusta mas.

El mensage yo lo entiendo como si intentase cerrar con el objeto estando nulo o algo parecido, pero eso me parece imposible, joer que es una consulta y pueden existir algunas con 0 tuplas.

Es que aunque no acceda al eof, este va a estar a true si la consulta no devuelve nada, no me valdria ni siquiera saber cuantas filas me devolvio el select.

De momento por no pararme en esto y seguir avanzando lo que hago es un count de la consulta y si es 0 no la ejecuto, asi si funciona, pero es muy bestia tener que hacer dos consultas en vez de una.
Responder Con Cita
  #6  
Antiguo 05-06-2007
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 26
maeyanes Va por buen camino
Que es lo que haces dentro del while... creo que ahí puede estar el meollo del asunto...


Saludos...
Responder Con Cita
  #7  
Antiguo 05-06-2007
LordSarevok LordSarevok is offline
Miembro
 
Registrado: abr 2007
Posts: 16
Poder: 0
LordSarevok Va por buen camino
Ahh oki, no llevo un buen dia no...

Pues dentro del while esta el acceso a cada elemento de la consulta y el next para que avance, si quito el next es bucle infinito y si quito la otra sentencia no puedo sacar los datos de la consulta xD.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Edit en TADODataSet scooterjgm Conexión con bases de datos 2 10-04-2006 10:46:36
Trabajando con TADODataset Novato Conexión con bases de datos 2 09-10-2005 00:57:27
Duda Delphius Varios 5 02-06-2005 08:40:29
TADODataSet VS TADOQuery Mauro.NET Conexión con bases de datos 1 24-05-2005 20:39:57
objeto TADODataSet Nidia H. Ochoa OOP 2 06-07-2004 23:48:12


La franja horaria es GMT +2. Ahora son las 23:40:43.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi