Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-06-2018
orodriguezca orodriguezca is offline
Miembro
 
Registrado: ene 2009
Posts: 221
Poder: 16
orodriguezca Va por buen camino
Hola Copernico, Estoy de acuerdo con los compañeros que ya han hecho sus aportes que el planteamiento de tu problema es algo desquiciado; pero bueno, para seguirte la corriente, y suponiendo que entendí el problema, propongo el siguiente fragmento de código como ejemplo de una posible solución;

Código Delphi [-]
begin
  ADOQuery1.Close;
  AdoQuery1.CursorLocation := clUseClient; // para que el cursor, de los datos,
                                           // esté lado del cliente

  AdoQuery1.CursorType := ctKeyset; // hace un snapshot de los datos, de esta
                                    // manera los datos se puede recorrer en
                                    // cualquier dirección, es decir, podemos
                                    // avanzar o retroceder.

  ADOQuery1.SQL.Text := 'Select * from Categorias';
  ADOQuery1.Open;
  ADOQuery1.Last; // Forzamos a cargar todos los registros en memoria porque el
                  // cursor está del lado del cliente.  Casi siempre funciona!.
                  // Es la forma confiable de saber cuantos registros
                  // devolvió la consulta SQL usando el método AdoQuery1.RecordCount.


  AdoQuery1.RecNo := 2; // Nos posicionamos en la segunda fila recuperada,
                        // la segunda categoria, suponiendo que exista!.

  // Obtenemos el nombre de la categoría
  Edit1.Text := ADOQuery1.FieldByName('Nombre').AsString;
end;

Nota: Una sentencia SQL select sin un order by, en la mayoría de los motores de bases de datos, puede regresar información en un orden totalmente aleatorio y no coincidir con el orden en que suponemos esta grabada la información en la tabla, sobre todo cuando el motor de bases de datos está haciendo uso de multithreading y/o paralelismo y sobre todo si se está haciendo reuso de registros borrados.
Responder Con Cita
  #2  
Antiguo 19-06-2018
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 19
ElDioni Va por buen camino
A ver así.

Código Delphi [-]
procedure ColocarNombres();
var
x:integer;
begin
QueryCategorias.First;
x:=1;
While QueryCategorias.Eof=false do
  begin
    TEdit(FindComponent('Edit'+inttostr(x))).Text:=QueryCategorias.Fields[1].AsString;
    inc(x);
    QueryCategorias.Next;
  end;


Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
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
Elegir un registro de toda la tabla sin restricciones bulc Varios 2 11-06-2015 13:51:28
Seleccionar primer registro con ADOQuery radenf Varios 8 02-11-2013 12:50:42
Elegir Carpeta madiazg Varios 3 13-10-2008 19:36:32
¿Cómo refrescar un registro de una adoQuery que ataca SQL Server? socger Conexión con bases de datos 2 28-05-2008 12:59:15
¿Que elegir? sinopsis Varios 6 30-01-2005 20:11:51


La franja horaria es GMT +2. Ahora son las 06:42:52.


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