Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-04-2007
PatrickM PatrickM is offline
Miembro
 
Registrado: jun 2006
Posts: 21
Poder: 0
PatrickM Va por buen camino
Ya, la funcion recursiva en Delphi no es la mejor solución, ya que para cada llamada recursiva estoy haciendo una llamada SQL; pero de momento es la unica solución que he encontrado. Yo creo que la solución pasa por hacer algo recursivo pero en SQL, para que se ejecute dentro del Servidor de Bases de Datos.

A ver si alguien se anima y encuentra una solución.

Gracias de todas formas kuan-yiu.
Responder Con Cita
  #2  
Antiguo 16-04-2007
hach hach is offline
Miembro
 
Registrado: mar 2007
Ubicación: Bariloche, Argentina
Posts: 44
Poder: 0
hach Va por buen camino
procedimiento almacenado?

hola,
que base de datos usas?
en Firebird podrias hacer un procedure, que realice una consulta de toda la tabla y recorriendo los datos retornes solo los que te interesan
Como todo el trabajo lo hace el servidor no hay costo de transferencia de datos

la consulta SQl desde delphi seria algo asi como

select * from sp_rama_herencia(nodo_actual)

Saludos, espero que te sirva...
Responder Con Cita
  #3  
Antiguo 16-04-2007
PatrickM PatrickM is offline
Miembro
 
Registrado: jun 2006
Posts: 21
Poder: 0
PatrickM Va por buen camino
Gracias hach, creo que esto podria servir!

Aunque se me complica un poco el tema, ya que la aplicación usa tanto una Base de Datos Oracle como un SQL Server; es configurable externamente. Ya hago algunos cambios en los SQL antes de mandarlos a la BD para tener en cuenta los cambios en la sintaxis, pero aquí creo que seran muchos mas.
Responder Con Cita
  #4  
Antiguo 16-04-2007
hach hach is offline
Miembro
 
Registrado: mar 2007
Ubicación: Bariloche, Argentina
Posts: 44
Poder: 0
hach Va por buen camino
no creo que tengas problemas

no creo que tengas problemas, creo que ambas bases soportan procedures
La llamada desde delphi posiblemente cambie, y tal vez la sintaxis del procedure, pero deberias poder
Responder Con Cita
  #5  
Antiguo 16-04-2007
Avatar de xander
xander xander is offline
Miembro
 
Registrado: jul 2006
Posts: 499
Poder: 20
xander Va por buen camino
Definitivamente unProcedimiento Almacenado es lo que necesitas, solo recuerda hacer indices por los campos CODIGO y CODIGO_PADRE para optimizar el acceso a cada nodo, yo lo tengo hecho así para una aplicación con un arbol enorme (varios cientos de miles de registros) y todo funciona a la perfección.

Tambien claro que al mostrar el arbol en un TTreeView no se cargan todos los datos de golpe sino que los voy cargando por "Niveles" y por "Padre Comun" asi solo se traen de la BD los registros que se van solicitando.
__________________
"Hey, nena, debe ser genial ser tú y verme a mí mismo..."
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Árbol php halizia PHP 4 20-12-2006 15:42:57
mp3 dañado? Componente para arreglar la estructura coletaun Varios 0 30-11-2006 17:56:15
arbol en TTreeView elguille77 Varios 1 08-11-2006 00:30:33
consulta con dos tablas con misma estructura AbcXxx SQL 8 30-06-2006 22:06:13
Es posible para solo la estructura de la base de datos de ib expert a Access Nelly Varios 3 10-02-2006 08:37:59


La franja horaria es GMT +2. Ahora son las 06:03:51.


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