Hola a todos
Estoy atacando una Base de Datos en SQL Server y me conecto mediante ADO
Realizo una consulta que me devuelve la oficina, cuenta y entidad y yo actualizo el digito de control que venia en blanco.
El programa funciona y todo muy bonito
Pero es exageradamente lento. Lo he ejecutado directamente en el servidor y el resultado es el mismo.
He probado a solo seleccionar 10 registros y tambien va muy lento y el codigo tan solo hace lo siguiente
Ahh, lo que se llama Tabla realmente es un AdoQuery, a ver si seleccionando solo los registros que tiene entidad funcionaba
Y la funcion Cero, añade ceros a la izquierda para la longitud dada
Código Delphi
[-]
Tabla.Open;
tabla.First;
while not tabla.Eof do
begin
banco := tabla.FieldByName('BANCO').Value + tabla.FieldByName('SUCURSAL').Value;
entidad := Cero(tabla.FieldByName('CUENTA').Value, 10);
DC := IntToStr(CalculaDC(banco, entidad));
DC := Cero(DC, 2);
tabla.Edit;
tabla.FieldByName('CUENTA').AsString := entidad;
tabla.FieldByName('DC').AsString := DC;
tabla.post;
tabla.Next;
end;
Tabla.Close;
Es cuestiones del ADO y me tengo que resignar o hay algun parametro que se pueda cambiar? O alguna otra forma de atacar al SQL que sea mas rapida, ya sea ODBC con el DBE
Un Saludo