Cita:
Empezado por johurgi
Hola a todos,
¿Como puedo coger los datos que me devuelve una query?tengo en mi programa una tquery que consulta un numero variable de columnas, estas columnas tengo que leerlas despues una a una.
Mis datos en la tabla los tengo de la siguiente forma.
Código SQL [-]
COD TEXTO
--------------
...
1.1 HOLA
1.2 MUNDO
1.3 .
...
Y el codigo que habia escrito y no me funciona es el siguiente
Código:
filtro:='select * from tabla where cod like '1.*';
consulta.sql.text:=filtro;
consulta.execsql;
consulta.open;
if consulta.recordcount <> 0 then
begin
//RECOGO LOS DATOS
end;
gracias por vuestra ayuda.
|
Creo que una buena forma sería a través de un array dinámico:
Código Delphi
[-]
procedure cargarArrayDinamico(...);
var
A : array of array of string;
I, J : Integer;
begin
SetLength(A, consulta.fieldCount); consulta.first;
for I := 0 to consulta.recordCount do begin
for J := Low(A[i]) to High(A[i]) do
begin
SetLength(A[i], consulta.recordCount); end;
end;
No se si esto es lo que pides.
No he probado aún este código pero la idea está. No conozco una función que te levante directamente los valores de la consulta y los mande a un array pero supongo que con esto se arregla la cosa...