Ver Mensaje Individual
  #18  
Antiguo 05-06-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 31
Lepe Va por buen camino
El código debería ser este:
Código:
this->ADODataSet1->Connection=this->ADOConnection1;
this->ADODataSet1->ConnectionString=this->ADOConnection1->ConnectionString;
this->ADOConnection1->Connected=true;  
this->ADODataSet1->CommandText="Select * from tabla";
this->ADODataSet1->Open;
this-> ADODataSet1->First;
      while (!this->ADODataSet1->Eof)
  {
      this->ADODataSet1->FieldByName("nombre")->AsString); // ¿que hace esto?
      this->ADODataSet1->Next();
  }
this->ADODataSet1->Close(); //Aqui da el error
No entiendo el error que da, no tiene sentido. En principio he modificado el orden de las líneas... más que otra cosa por lógica. Es mejor primero asignar la conexión y después abrirla.

Por otra parte, y dado el error extraño que muestra, me aseguro de ir al primer registro de la consulta con First.

Lo que desde luego me extraña es la "forma de sacar los datos de ese ADODATASET", porque la primera línea del bucle no hace nada. AsString es una función que devuelve el texto, pero el valor devuelto no lo recoges en una asignación, ni un ShowMessage ni nada por el estilo, podría incluso suponerse que el optimizador del compilador elimina esa línea de código tras compilar.

Algo deberás hacer con ese campo "nombre".

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita