Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-02-2010
jaimeh jaimeh is offline
Miembro
 
Registrado: mar 2007
Posts: 68
Poder: 18
jaimeh Va por buen camino
Valor por defecto campo firebird

Hola a todos


Como podría saber el valor por defecto de un campo de una tabla
firebird. No me refiero al tipo de campo.

No se si con delphi hay alguna funcion o propiedad de un TField
que me lo diga. No he encontrado ninguna.

O habría que hacerlo con SQL.

Muchas gracias a todos
Responder Con Cita
  #2  
Antiguo 05-02-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En SQL normalmente hay forma de definirlo para la tabla (si la creas con una herramienta visual también se debe poder).

Código SQL [-]
  ...
  add columna1 CHAR (11) DEFAULT 'Valor'
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 05-02-2010
Avatar de jafera
jafera jafera is offline
Miembro
 
Registrado: may 2007
Ubicación: Llagostera (Girona)
Posts: 582
Poder: 17
jafera Va por buen camino
Yo lo que hago es asignar este valor predeterminado en el onnewrecord de la tabla

Josep
Responder Con Cita
  #4  
Antiguo 05-02-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Prueba accediendo a las tablas del sistema:

Código:
select RDB$DEFAULT_SOURCE 
from RDB$RELATION_FIELDS
where RDB$FIELD_NAME='CIUDAD'     // <--- el campo
and RDB$RELATION_NAME='TBCALLES'  // <--  la tabla
Esto te devuelve el valor por defecto que tenga.
Responder Con Cita
  #5  
Antiguo 05-02-2010
jaimeh jaimeh is offline
Miembro
 
Registrado: mar 2007
Posts: 68
Poder: 18
jaimeh Va por buen camino
Muchas gracias por responderme Casimiro

He escrito este código en delphi

Código Delphi [-]

                    qryDestino.SQL.Text :=
                      'select RDB$DEFAULT_SOURCE ' +
                      'from RDB$RELATION_FIELDS ' +
                      'where RDB$FIELD_NAME= ' + fldSource.FieldName +
                      //el campo
                      ' and RDB$RELATION_NAME= '+ listSource[j];
                      // <--  la tabla


                    qryDestino.Open;

Como tengo que hacerlo para recoger el valor que me daría

Muchas gracias

Última edición por Caro fecha: 05-02-2010 a las 14:51:58.
Responder Con Cita
  #6  
Antiguo 05-02-2010
jaimeh jaimeh is offline
Miembro
 
Registrado: mar 2007
Posts: 68
Poder: 18
jaimeh Va por buen camino
Me da error Sql

Código Delphi [-]
                   qryOrigen.SQL.Text :=
                      'select RDB$DEFAULT_SOURCE ' +
                      'from RDB$RELATION_FIELDS ' +
                      'where RDB$FIELD_NAME= ' + fldSource.FieldName +
                      //el campo
                      ' and RDB$RELATION_NAME= '+ listSource[j];
                      // <--  la tabla


                    qryOrigen.Open;


Me dice campo desconocido y si existe en la tabla origen
Las tablas estan en diferentes bases de datos

Muchas gracias
Responder Con Cita
  #7  
Antiguo 05-02-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por jaimeh Ver Mensaje
Como tengo que hacerlo para recoger el valor que me daría
Hola jaimeh, para recuperar puedes asignarle un alias.

Código Delphi [-]
   qryDestino.SQL.Text := 'select RDB$DEFAULT_SOURCE As Campo' +
   .................................
   qryDestino.Open;


 
   Showmessage(qryDestino.FieldByName('Campo').AsString);

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #8  
Antiguo 05-02-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por jaimeh Ver Mensaje
Me dice campo desconocido y si existe en la tabla origen
Las tablas estan en diferentes bases de datos
Hola de nuevo, te falta ponerle las comillas.

Código Delphi [-]
   qryOrigen.SQL.Text := 'select RDB$DEFAULT_SOURCE As Campo' +
                      'from RDB$RELATION_FIELDS ' +
                      'where RDB$FIELD_NAME= ' + QuotedStr(fldSource.FieldName) +
                      ' and RDB$RELATION_NAME= '+ QuotedStr(listSource[j]);
   qryOrigen.Open;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #9  
Antiguo 05-02-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por jaimeh Ver Mensaje
Como podría saber el valor por defecto de un campo de una tabla
firebird. No me refiero al tipo de campo.
Perdón.
Está claro que no leí bien la pregunta...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #10  
Antiguo 05-02-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Neftali Ver Mensaje
Perdón. Está claro que no leí bien la pregunta...
Es que hoy es viernes y ya estamos con la mente nublada, qué bien, fin de semana: hacer limpieza de la casa, hacer las compras, lavar la ropa acumulada, reparar la lámpara que se estropeó, llevar el coche al taller, llevar el perro al veterinario, con las últimas lluvias los cristales de las ventanas están opacos de suciedad... vaya, ya llegó el lunes
Responder Con Cita
  #11  
Antiguo 05-02-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Caro Ver Mensaje
Hola jaimeh, para recuperar puedes asignarle un alias.
qryDestino.SQL.Text := 'select RDB$DEFAULT_SOURCE ' +
.................................
qryDestino.Open;
Showmessage(qryDestino.FieldByName('Campo').AsString);

Saluditos

También puede hacerse sin alias:

Showmessage(qryDestino.Fields[0].AsString);
Responder Con Cita
  #12  
Antiguo 05-02-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Casimiro Notevi Ver Mensaje
....qué bien, fin de semana: hacer limpieza de la casa, hacer las compras, lavar la ropa acumulada, reparar la lámpara que se estropeó, llevar el coche al taller, llevar el perro al veterinario, con las últimas lluvias los cristales de las ventanas están opacos de suciedad...
Cómo me suena eso...

__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #13  
Antiguo 05-02-2010
jaimeh jaimeh is offline
Miembro
 
Registrado: mar 2007
Posts: 68
Poder: 18
jaimeh Va por buen camino
Gracias a todos por responderme

Con el último apunte de Caro funciona perfectamente.

Me imagino que de la misma manera mas o menos
se podría averiguar la description de un campo.

Y también se podrían grabar el valor por defecto y el valor
de description.

Podrías indicarme algo respecto a esto último

De todas formas mucha gracias.
Responder Con Cita
  #14  
Antiguo 05-02-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
También puede hacerse sin alias:

Showmessage(qryDestino.Fields[0].AsString);


Cita:
Empezado por jaimeh Ver Mensaje
Me imagino que de la misma manera mas o menos
se podría averiguar la description de un campo.
Hola de nuevo, de esa misma forma puedes obtener la descripción,

Código SQL [-]
select RDB$DESCRIPTION
from RDB$RELATION_FIELDS
...............................

Has este select para que puedas ver los campos que tienes en RDB$RELATION_FIELDS, así ves lo que te interesa.

Código SQL [-]
select *
from RDB$RELATION_FIELDS
where  RDB$RELATION_NAME='RDB$FIELDS'

Cita:
Empezado por jaimeh Ver Mensaje
Y también se podrían grabar el valor por defecto y el valor
de description.
Puedes hacer un Update para cambiar dichos valores:

Código SQL [-]
update RDB$RELATION_FIELDS Set RDB$DESCRIPTION='descripcion para el campo'
where RDB$FIELD_NAME='CAMPO'
and RDB$RELATION_NAME='TABLA'

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #15  
Antiguo 05-02-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
Perdón.
Está claro que no leí bien la pregunta...
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Es que hoy es viernes y ya estamos con la mente nublada,......................
Yo creo que Neftali ayer festejo compadres y aún sigue con la cabecita dolida .

Por cierto, felidades a todos los compadres .

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #16  
Antiguo 05-02-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Caro Ver Mensaje
Yo creo que Neftali ayer festejo compadres y aún sigue con la cabecita dolida.


¿Cómo lo sabes Caro?

Ayer hubo partidito y cervecita y cervecita y cervercita.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #17  
Antiguo 05-02-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
¿Cómo lo sabes Caro?

Ayer hubo partidito y cervecita y cervecita y cervercita.
Es que soy clarividente amiguito .


La verdad, ayer en mi país se festejo compadres y cuando salí a cenar vi a muchas muchas personas (de hecho la mayoría hombres) festejando compadres y solo bromeando se ocurrio que tu también habías festejado .

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #18  
Antiguo 05-02-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Por ahí tenéis unos festejos que no se hacen aquí: la de los 15 años, de los 18 años... y ahora descubro la de los compadres
Responder Con Cita
  #19  
Antiguo 06-02-2010
jaimeh jaimeh is offline
Miembro
 
Registrado: mar 2007
Posts: 68
Poder: 18
jaimeh Va por buen camino
Muchas gracias a Caro y a todos los demás,

Ha quedado perfectamente entendido.

Saludos
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
Establecer un valor por defecto en un campo ya creado David Firebird e Interbase 2 13-06-2007 00:58:39
Valor por defecto en DBRadioGroup RyAr Varios 1 01-07-2004 14:46:53
Valor por defecto en OnNewRecord RyAr Conexión con bases de datos 4 22-06-2004 10:49:32
Valor por defecto en un dbgrid NuncaMas Conexión con bases de datos 3 28-01-2004 20:31:19
DBGRID, valor en campo por defecto andrestsas Varios 4 13-08-2003 18:49:43


La franja horaria es GMT +2. Ahora son las 12:09:00.


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