Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-02-2005
jplj jplj is offline
Miembro
 
Registrado: oct 2003
Posts: 189
Poder: 21
jplj Va por buen camino
Obtener una copia tipo del registro.

Hola:

En clipper (¿alguien se acuerda qué es?) se podía obtener un registro en blanco con los valores por defecto para cada uno de sus campo posicionandonos más allá del final de la tabla.
Quería saber la forma de hacer algo similiar utilizando una instrucción SQL: obtener mediante una consulta que abarca campos de diferentes tablas, un "prototipo" con lo valores por defecto que la Base de Datos tiene asigando a cada campo.
Debería ser independiente del motor de BD que se emplee y que no requiera una insercción previa.

Un saludo.
__________________
Sonríe. Mañana puede ser peor.
Responder Con Cita
  #2  
Antiguo 16-02-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
En Clipper, Dbase, e incluso Access lo que se obtiene es el llamado "Registro Fantasma", es decir una fila en blanco apta para introducir datos según los criterios que tenga cada columna o campo.

Si la consulta que ejecutas es actualizable y la estas visualizando en una rejilla bastará con ir una fila más del final para obtener lo mismo.

@ 20,10 Say "Hasta Luego"

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 16-02-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por marcoszorrilla
@ 20,10 Say "Hasta Luego"
[modo=nostalgico]
Hace taaaaaaaanto tiempo que no veía algo así
[/modo]

// Saludos
Responder Con Cita
  #4  
Antiguo 16-02-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Pues yo lo veo todos los días, pues aún me toca mantener varios programas que fueron realizados en Clipper.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 16-02-2005
jplj jplj is offline
Miembro
 
Registrado: oct 2003
Posts: 189
Poder: 21
jplj Va por buen camino
Lo que pretendía hacer era algo similiar a:

Código Delphi [-]
(no hay etiquea de clipper...)

FUNCTION DB_LeeRegistro(cArea, lModif)

    LOCAL aFich:={},;           // Array que contiene los campos.
          cAreaAc:=SELECT(),;   // Area de trabajo anterior.
          nPuntero:= 0,     ;   // Puntero
          nRegis,           ;   // N£mero de campos del registro.
          nI                    // Contador de campos.

    SELECT(cArea)
    nRegis := FCOUNT()
    nPuntero:= RECNO()

    IF !lModif   // Inserci¢n.
      GO BOTTOM
      SKIP
    ENDIF

    FOR nI=1 to nRegis
      AADD( aFich, FIELDGET(nI) )
    NEXT

    DBGOTO( nPuntero )
    SELECT( cAreaAc )

RETURN (aFich)


Al final obtengo un array con los valores por defecto de la consulta, que me servira como base para realizar una insercción.

Pero la consulta no es actualizable, y quería que el método fuera "universal".

No obstante, muchas gracias.


Cita:
Empezado por roman
[modo=nostalgico]
Hace taaaaaaaanto tiempo que no veía algo así
[/modo]
¿Nostalgia?
Ponte a modificar, depurar, ... un programita de clipper ahora que estás acostumbrado a lo bueno.
__________________
Sonríe. Mañana puede ser peor.
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 04:57:39.


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