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

 
 
Herramientas Buscar en Tema Desplegado
  #4  
Antiguo 15-05-2012
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.806
Poder: 22
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Para saber si un registro existe o no, deberías preguntarlo directamente a la base y no recorrer cada registro y comparar.

Esta parte
Código:
//Recorro la tabla de productos con una Query para comprobar que el producto no este ya en la BD    
                while (!XDatos->QRecorreProductos->Eof)
                {
                        if (XDatos->QRecorreProductosREFERENCIA->Value == StringGrid1->Cells[0][f])
                                     existe = true;
                        XDatos->QRecorreProductos->Next();
                }
Deberías realizarla con un query que te responda si existe o no.
No conozco como hacerlo en C, pero sería algo así:
Código:
   // Ejecuto query que cuentas cuantos registros tienen referencia=[lo que busco]
   XQueryExisteDato->SQL->Text = 'SELECT COUNT(*) FROM DATOS WHERE REFERECIA='||StringGrid1->Cells[0][f];
   XQueryExisteDato->ExecSQL;

   // Si existe la cuenta será mayor a 0
   if (XQueryExisteDato->FieldByName('COUNT')->Value > 0) 
   {existe = true;}
Lo mismo deberías hacer en cada caso en el que recorres las tablas con un while.
Responder Con Cita
 



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
CreateForm demasiado lento kverna Varios 6 06-03-2008 14:32:14
Procedure en Firebird lento o IbQuery lento capo979 Firebird e Interbase 14 17-07-2007 21:35:36
Demasiado lento programa Manuel Varios 1 27-10-2005 18:10:08
Proceso lento al dar enter sobre un boton Walterdf Varios 1 05-04-2005 18:20:50
Interbase demasiado lento diegofhernando Conexión con bases de datos 2 12-09-2003 22:05:24


La franja horaria es GMT +2. Ahora son las 07:05:41.


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