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 04-01-2011
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
Question ¿tablas temporales?

¡¿que son las tablas temporales y como se usan?


yo entiendo que uno hace un query dijamos
select * clientes y ese resultado se puede asignar a una tabla temporal

pero no se si esa tabla es fisicamente creada y al cerrar el programa
que se conecta a firebird o firebird destruye esa tabla

¿se le puede asignar nombre a esta tabla?

en muchas ocaciones es muy util hacer un query y trabajar como si fuese
una tabla real en la base de datos.
Responder Con Cita
  #2  
Antiguo 05-01-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Si no me equivoco te referís a las vistas. Las vistas son tablas virtuales y su uso es similar al de una tabla normal.
Por ejemplo crear una vista:
Código SQL [-]
CREATE VIEW CODIGOS_SIN_REPETIR(CODIGO)  
AS
  SELECT DISTINCT CODIGO FROM CODIGOS;
Aquí tenés información más detallada: CREATE VIEW .

Creo recordar que en La Cara Oculta de Delphi 4 también hay una buena explicación del uso de las vistas.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 05-01-2011 a las 01:05:40.
Responder Con Cita
  #3  
Antiguo 05-01-2011
Avatar de Combat-F2D
Combat-F2D Combat-F2D is offline
Miembro
 
Registrado: may 2003
Ubicación: Toletum
Posts: 454
Poder: 22
Combat-F2D Va por buen camino
ojo, no confundir view con tabla temporal, no es lo mismo
__________________
online
Responder Con Cita
  #4  
Antiguo 05-01-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por Combat-F2D Ver Mensaje
ojo, no confundir view con tabla temporal, no es lo mismo
Tenés razón, olvidé que se pueden usar en Firebird a partir de la v. 2.1

Creo que debí acostarme más temprano...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 06-01-2011
Avatar de lucasarts_18
lucasarts_18 lucasarts_18 is offline
Miembro
 
Registrado: mar 2005
Ubicación: Villa Alemana,Chile
Posts: 1.087
Poder: 21
lucasarts_18 Va por buen camino
Amigos:

El mismo IbExpert tiene una opción al momento de crear una tabla, la opción Type (Persistent, Temp: DELETE ROWS, Temp: PRESERVE ROWS). siendo la por defecto la de Persistent (obviamente) .

Espero que les sirva, yo por ahora estoy viendo este tema ya que requiero de una tablita de esas.

Lo otro que encuentro bueno y solo lo visto en MS-SQL Server es las variables tipo tabla, que me ha sacado en más de un apuro

Saludos .-
__________________
No todo es como parece ser...
Responder Con Cita
  #6  
Antiguo 23-09-2012
jdnb01 jdnb01 is offline
Registrado
NULL
 
Registrado: sep 2012
Posts: 1
Poder: 0
jdnb01 Va por buen camino
Tablas temporales SQL ejemplo

Quizas con este codigo podran apreciar un breve ejemplo de usar las tablas temporales y de como podrian ser recorridas, asi he aprendido y o utilizarlas y su alcance

Código SQL [-]
--Aqui creamos la primera tabla temporal "#uno"

create table #uno(   
col_cero int,
col_uno int,
col_dos int)

--Aqui la llenamos con datos manualmente
insert #uno(col_cero,col_uno,col_dos)
values (1,2,3),
(4,5,6),
(7,8,9)
 
--se crea la segunda tabla temporal "#dos"
create table #dos(col_cero2 int, col_uno2 int, col_dos2 int)

--aqui declaramos variables para controlar el while de registro a registro
declare @index int = 1
declare @index_T int
--fijamos en la variable el conteo total de filas en la tabla #uno
 select @index_T = count(col_cero) from #uno  
--comienza el while 
while (@index <= @index_T )
begin
--creo las variables y les asigno el valor que necesito de la tabla #uno
    declare @cero int
    select  top(@index) @cero = col_cero from #uno 
    declare @uno int
    select  top(@index) @uno = col_uno from #uno
    declare @dos int
    select  top(@index) @dos = col_dos from #uno
--lleno la tabla #dos
    insert #dos(#dos.col_cero2,#dos.col_uno2,#dos.col_dos2)
    values(@cero * @cero,@uno * @uno,@dos*@dos) 
--aumento el indice
set @index = @index + 1
end
--se muestran los resultados
select * from #uno
select * from #dos
--se descartan lsa tablas temporales
drop table #uno
drop table #dos

existen muchas maneras de trabajarlas, espero ayudar a alguien con este codigo
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Tablas Temporales look SQL 2 15-03-2008 16:53:16
Tablas Temporales Milperrimo Firebird e Interbase 7 25-10-2007 05:01:25
Tablas Temporales MySQL y Vb6 Payola2011 Varios 2 08-02-2006 20:52:04
tablas temporales en interbase Manuel Firebird e Interbase 8 13-06-2005 14:45:06
Acceder a las tablas temporales oneromm Conexión con bases de datos 1 24-12-2003 10:52:18


La franja horaria es GMT +2. Ahora son las 23:55:35.


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