Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-03-2005
repo repo is offline
Miembro
 
Registrado: feb 2004
Posts: 14
Poder: 0
repo Va por buen camino
Optimizar Vistas

Hola tengo una BD en Firebird 1.5, y estoy realizando varias vistas que unen 4 tablas, tablas con bastantes datos.

Mi pregunta es como puedo optimizar las vistas. Añadiendo Indices imagino, pero a que tablas de las que forman la vista, ya que a una vista no se le pueden añadir indices.

Agradeceria cualquier sugerencia.

Muchas Gracias

repo.
Responder Con Cita
  #2  
Antiguo 02-03-2005
Avatar de StartKill
StartKill StartKill is offline
Miembro
 
Registrado: ene 2004
Posts: 299
Poder: 21
StartKill Va por buen camino
Holas, no e trabajado con firebird.

Pero te comento que tube el mismo problema con interbase, tenia una vista donde hacia una union de 12 tablas y estas eran grandes.

"Se supone que la siguiente linea tenia que ser veloz", pero no!!!!

Código:
select * from vista01 where codigo_art='100203'
ya que esta consulta me arrojaba 12 registros (demoraba casi 6 segundos)

No estoy seguro pero creo que el servidor primero contruye la vista y luego recien hace la selecion y envia los datos al cliente.

Con muchos dolores de cabeza averigue que era mejor un procedure que reciba los parametros para el where y este procedure contruia el selec con la condicion dada.(ya sabes con el for select.....where....into), y mejoro la consulta:

Código:
select * from procedure('100203')
Zasss, en un parpadeo de ojos ;-)


Your friend
StartKill
Lima-Perú
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


La franja horaria es GMT +2. Ahora son las 02:50: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