Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   System Data - Interbase (https://www.clubdelphi.com/foros/showthread.php?t=10658)

altp 25-05-2004 19:02:01

System Data - Interbase
 
Hola a todos.

Me gustaría saber cómo puedo modificar valores en las tablas System Data de Interbase.
Utilizo IBConsole, y desde ahí no soy capaz de cambiar nada.

Agradecería su ayuda.

Gracias.

jachguate 25-05-2004 19:16:40

Cuales son las tablas System Data????
:confused:

Te referis al diccionario de datos??

tablas normalmente llamadas rdb$*

que valor queres cambiar, y como lo estas intentando???

Si se trata de alguna otra tabla llamada SystemData, mejor se mas especifico...

Hasta luego.

;)

altp 25-05-2004 19:24:23

Perdona por la explicación y gracias por responder.

Las System Data, efectivamente son las tablas llamadas RDB$.
Lo estoy intentando cambiar directamente en el IBCONSOLE.
También e probado con update.

No me cambia ningún valor.

Tienes alguna idea de cómo hacerlo?

Gracias

jachguate 25-05-2004 19:31:45

Mirá que no está recomendado alterar la información del diccionario de datos...

que tabla estas tratando de actualizar?

altp 25-05-2004 19:37:16

Quiero actualizar cualquier tabla, pero los campos que no son usados. Lo quiero utilizar para insertar algún valor que pueda necesitar en la aplicación, por ejemplo guardar cómo muestro el nombre del campo:
NOMBRE --> Que aparezca 'Nombre de Cliente' (por ejemplo)

Sigo haciendo pruebas y ahora si me ha dejado hacer un update.
Sigo con el tema.

Gracias.

jachguate 25-05-2004 19:46:46

Cita:

Empezado por altp
Quiero actualizar cualquier tabla, pero los campos que no son usados.

Estas sugiriendo que al diseño del diccionario de datos le sobran campos??

como cuales??

Cita:

Empezado por altp
Lo quiero utilizar para insertar algún valor que pueda necesitar en la aplicación, por ejemplo guardar cómo muestro el nombre del campo:
NOMBRE --> Que aparezca 'Nombre de Cliente' (por ejemplo)

En la tabla rdb$relation_fields, en que campo???

Cita:

Empezado por altp
Sigo haciendo pruebas y ahora si me ha dejado hacer un update.

Hasta donde conozco no hay nada que te impida hacer insert/update/delete sobre las tablas del diccionario... pero hacelo bajo tu cuenta y riesgo.

Hasta luego.

;)

altp 25-05-2004 19:52:24

Estoy mirando en las tablas y hay muchos valores que están a null.
Supongo que los utilizará el sistema, me gustaría saber cuales puedo utilizar.

E probado en la tabla RDB$RELATION_FIELDS en el cambo RDB$COMPLEX_NAME y me ha funcionado.

Si sabes algún campo que pueda utilizar estaría agradecído que me lo dijeras.

Gracias.

guillotmarc 25-05-2004 20:15:50

Hola.

Mira este artículo http://www.clubdelphi.com/ib/articul...lassistema.php

Personalmente te desaconsejo guardar datos en las tablas de sistema. ¿ Que problema hay en crear tablas normales ?.

Saludos.

sanxpue 25-05-2004 22:26:01

Lo que tu quieres..
 
Si no me equivoco lo que tu quieres es que cambie el caption del campo..
osease tu tienes un dbgrid y quieres que en lugar de que salga Nombre en su titulo salga Nombre del Cliente..

Si hasta ahi vamos bien entonces debe de irte al grid dale doble click y en cada campo puedes cambiarselo.. si no no entendi¡¡¡ :confused:

altp 26-05-2004 11:09:30

Guillotmarc, el tema de no crear tablas normales es para ahorrarmelo y poder coger una serie de propiedades que les doy a los campos en tiempo de ejecución, de momento estoy INTENTANDO utilizar la tabla RDB$RELATION_FIELDS con el campo RDB$DESCRIPTION, me está funcionando de momento, pero todavía no lo tengo del todo definido, si sabeis algo de ese campo en concreto, si lo utiliza Interbase para alguna cosa, pues bueno, me lo comentais.

Sanxpue, yo quiero cambiar un montón de propiedades y que se haga en tiempo de ejecución, el solito. Tengo un programa que genera él solo las pantallas, dependiendo de qué tabla venga muestra una información u otra.

Yo de momento estoy utilizando una tabla en la cual guardo todos esos datos, pero me estoy dando cuenta que en las SYSTEM DATA hay muchas posibilidades para hacer lo que yo quiero, siempre y cuando se puedan utilizar.


Gracias

__cadetill 26-05-2004 11:18:28

Lo que yo no termino de entender es para qué quieres usar las tablas de sistema para almacenar información propia tuya :confused:

A ver, TODAS las tablas de sistema y TODOS los campos son usados por el motor en un momento u otro y dependiendo de lo que hagas y necesites.

En serio, una buena recomendación: NO uses las tablas de sistema más que para hacer alguna que otra consulta (o tocar cosas que el SQL no te permita como generadores,...), pero NO para almacenar información propia tuya, para eso crete tus propias tablas

kinobi 26-05-2004 11:20:54

Cita:

Empezado por altp
Yo de momento estoy utilizando una tabla en la cual guardo todos esos datos, pero me estoy dando cuenta que en las SYSTEM DATA hay muchas posibilidades para hacer lo que yo quiero, siempre y cuando se puedan utilizar.

Uno de los problemas, entre otros, que tiene utilizar las tablas del sistema es que no tienes la garantía de que en versiones posteriores del gestor de datos (en este caso InterBase o Firebird) sigan estando ahí las tablas o campos que estás utilizando. De hecho, es algo que sucede con relativa frecuencia.

Personalmente creo que no es buena idea.

Saludos.

altp 26-05-2004 11:43:13

Gracias a todos por responderme.

Me estais convenciendo, creo que no utilizaré las SYSTEM DATA para almacenar cosas mías, me has convencido Kinobi con que en versiones futuras exista o no.

Probaré con tablas mías.

Gracias y Saludos a todos.


La franja horaria es GMT +2. Ahora son las 10:10:15.

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