Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Creacion de Tablas (https://www.clubdelphi.com/foros/showthread.php?t=13819)

Jvilomar 31-08-2004 21:49:05

Creacion de Tablas
 
Hola a todos... este es mi problema...

necesito crear un modulo para una aplicacion en la que tengo que manejar varios campos en una tabla un numero de cuenta y en otra tabla unos conceptos, por fecha. la Disyuntiva que se me presenta es que por ejemplo haciendo una relacion cartesiana podria tener 10 cuentas y 10 conceptos, la ayuda que necesito es a ver una opinion de como hacer las tablas.. si hago una sola con los 100 posibles campos o si hago una relacion de las dos tablas en una las cuentas y en otra los conceptos... alguien podria aclararme este asunto? Gracias...

__cadetill 31-08-2004 21:54:32

yo lo tendría claro, 2 tablas en maestro-detalle

Jvilomar 31-08-2004 22:02:06

Gracias cadetill eso es lo que he pensado.. el punto seria luego para presentar los datos... o consultar los datos... dejame ver si te explico mejor.. 10 cuentas * 10 conceptos.. cuenta 1 concepto 1 (11), cuenta 1 concepto 2 (12) y asi sucesivamente.... cual seria tu idea para este tipo de aplicacion... a ver que me dices....

__cadetill 31-08-2004 22:23:47

En las relaciones maestro/detalle, la tabla detalle tiene la clave del maestro más un identificador propio, es decir, en este caso añgo así

Tabla Maestro:
Cuenta -> clave
Otros campos

Tabla Detalle:
Cuenta -> Clave
Concepto -> Clave
Otros campos

Es decir, la clave de la tabla detalle estaría formada por 2 campos, la Cuenta y el Concepto

Puedes hacer referencias de integridad en la misma tabla con actualizaciones y borrados en cascada (si el SGBD te lo permite)

Luego, los SQLs son sencillo, sólo has de hacer una join como por ejemplo:
Código SQL [-]
select *
from Maestro m
  inner join Detalle d on d.Cuenta = m.Cuenta

Espero que te sirva

Jvilomar 31-08-2004 22:49:43

gracias por responder cadetill ....

pero no me ha servido... mira imaginate una hoja en excel, las filas serian las cuentas, las columnas los conceptos, todo esto regido por una fecha, cada casilla fila / columna o celda como quieras llamarla lleva un valor o un monto.. entiendes ahora? es decir tendria que registrar todas las transacciones de una cuenta, luego la siguiente, la siguiente... o hay alguna manera de hacer esto un poco menos complicado? perdona si me he hecho un rollo pero ya voy para 7 horas sin pararme del ordenador y esto me esta matando.. lo malo es que tengo que entregarlo para mañana, por eso es la prisa... solo necesito resolver este algoritmo luego lo otro es cocer y cantar......

Gracias otra vez..

__cadetill 31-08-2004 23:01:19

A mi lo que me despista es lo de la fecha

A ver si te he entendido

Código:

        Concepto1 Concepto2 Concepto3
Cuenta1    X        X        X
Cuenta2    X        X        X
Cuenta3    X        X        X
Cuenta4    X        X        X

Y tu lo que quieres guardar son las X, correcto? Bien.... donde interbiene la fecha? Porque si es así el dibujo... te sirve lo que te he descrito yo antes guardando:

MAESTRO
Cuenta1
Cuenta2
Cuenta3
Cuenta4

DETALLE
Cuenta1 - Concepto1 - X
Cuenta1 - Concepto2 - X
Cuenta1 - Concepto3 - X
Cuenta2 - Concepto1 - X
Cuenta2 - Concepto2 - X
Cuenta2 - Concepto3 - X
Cuenta3 - Concepto1 - X
Cuenta3 - Concepto2 - X
Cuenta3 - Concepto3 - X
Cuenta4 - Concepto1 - X
Cuenta4 - Concepto2 - X
Cuenta4 - Concepto3 - X

Jvilomar 31-08-2004 23:08:01

Pues si Cadetill me has entendido ... lo de la fecha es porque ese diagrama que me has dibujado, o sea..... Los X seran registrados por fecha..

comprendes..... a ver .... hombre.. que ya casi se ha cocido este rollo :D

y gracias nueva vez por tu tiempo....

__cadetill 31-08-2004 23:26:17

Vale, pues si los X irán registrados por fecha, sólo has de añadir la fecha al indice de la tabla detalle. Algo así

DETALLE

Cuenta - K
Concepto - K
Fecha - K
Valor

Con esto ya tienes lo que deseas ;)

Jvilomar 31-08-2004 23:41:00

Pues gracias mil hermano mio... creo que es lo que me interesa.. pero una ultima interrogante... entonces necesitaria tres tablas? una para las cuentas, otra para los conceptos y otra para registrar las transacciones? o sea.. seria algo asi como

Código:

  tCuentas
      idCuenta
  tConceptos
      idCuenta
      idConcepto
  tTrasaccion
      Fecha
      idCuenta
      idConcepto
      Monto

Creo que iria asi el asunto o estoy equivocado?

__cadetill 31-08-2004 23:45:44

no, te sobraría la del medio, no hace falta. Podría ser algo así:

Código:

  tCuentas
      idCuenta -> clave
  tConceptos
      idCuenta -> clave
      idConcepto -> clave
      Fecha -> clave
      Monto


Jvilomar 31-08-2004 23:52:16

gracias manito..

espero poder resolver con esto....

de todos modos milllll gracias........


La franja horaria es GMT +2. Ahora son las 22:31:16.

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