Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-05-2004
marial marial is offline
Miembro
 
Registrado: may 2004
Posts: 26
Poder: 0
marial Va por buen camino
Question Poner maestro varias tablas en una sola

Hola a todos!
Hace poco que trabajo con Delphi, y estoy intentanto hacer una aplicacion con sqlserver. De momento todo va bien, el problema ha aparecido cuando necesito asociar como MasterSource 5 tablas que son maestras de una única. Si alguien me puede ayudar lo agradecería mucho. Pues no puedo seguir con mi proyecto.

Gracias de antemano.
Responder Con Cita
  #2  
Antiguo 13-05-2004
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
si nos mandases la estructura de esas tablas podriamos mirarlo mas a fondo.

podria ser??
__________________
online
Responder Con Cita
  #3  
Antiguo 14-05-2004
sanxpue sanxpue is offline
Miembro
 
Registrado: jul 2003
Posts: 196
Poder: 21
sanxpue Va por buen camino
Angry si..

Si manda las estructura de los datos...y como quieres que se enlacen je

Weno haber donde dan los cursos de adivinas o te quedas en el hoyo
__________________
saludos desde Puebla Mexico..
asanxt@hotmail.com
"como siempre a sus ordenes y siempre con buena cara"
'lolita me excitas, perversa piel de melocotón'
Responder Con Cita
  #4  
Antiguo 14-05-2004
marial marial is offline
Miembro
 
Registrado: may 2004
Posts: 26
Poder: 0
marial Va por buen camino
Unhappy Estructura de las tablas:

Teneis razón, pero es la primera vez que pregunto en el foro. Lo intento de nuevo, a ver si me explico bien:

Tengo 9 tablas: Hay una de ellas que tira de las otras 8 (que son totalmente independientes), pues tiene como foreign key las primary key de las 8 anteriores.

Mi pregunta es: ¿Cómo le indico a la tabla 9 que las otras 8 son MasterSource de ella? Lo he hecho con 2 tablas y sale genial, pues se lo pongo en la propiedad y listo, pero cuando son más tablas, ¿cómo se hace? ¿es con un modulo de datos? ¿como diseño el modulo de datos?

Gracias de nuevo.
Responder Con Cita
  #5  
Antiguo 14-05-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Hola marial

Anto todo darte la bienvenida a los foros. Tambien recomendarte la lectura de la Guía de Estilos (ver firma) y la lectura de este hilo. En ellos verás claramente cómo formular las preguntas

Por otra parte, como dicen los compañeros, falta información. Mira de responder a estas preguntas a ver si podemos ayudarte

- Motor de conexión (BDE, ADO, DBX,.....)
- Base de datos
- Nombre de tablas y campos involucrados en las relaciones
- Quieres acceder mediante SQL o no
- Otras que se te ocurran después de la lectura de la Guia de Estilos y el hilo recomendado

Nos leemos
Responder Con Cita
  #6  
Antiguo 14-05-2004
marial marial is offline
Miembro
 
Registrado: may 2004
Posts: 26
Poder: 0
marial Va por buen camino
Perdón...

Perdonad si os he vuelto un poco locos con mi "pregunta", pero es que es la primera vez que hacía uso de un foro. Acabo de leer como debo formular las preguntas (espero que esta vez lo haga bien) así que allá voy:

-Sistema operativo: Windows XP
-Motor de conexión: MYSSQLConnection
-Base de datos: SQL Server
-Acceder mediante SQL: SI
-Versión Delphi: 7
-Tablas: Como os dije es una base de datos con 9 tablas (por seguridad de la empresa no puedo ponerlas aqui). Se relacionan entre ellas por medio de las claves primarias y externas. Hice una pequeña prueba usando solamente 2 tablas, poniendo en la propiedad MasterSource de la tabla detalle el DataSource correspondiente de la tabla maestra, al igual que indicándole los campos en la propiedad MasterFields. Hasta aquí todo bien.
El problema me surge cuando quiero asociar los foreign keys de esa tabla "X" con las tablas Maestro (que son unas 5 tablas diferentes y que entre ellas no tienen relación).

Espero que ahora me haya expresado bien. Perdonad por antes.

Gracias otra vez.
Responder Con Cita
  #7  
Antiguo 14-05-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Cita:
Empezado por marial
-Motor de conexión: MYSSQLConnection
esto es ADO???

Cita:
Empezado por marial
-Tablas: Como os dije es una base de datos con 9 tablas (por seguridad de la empresa no puedo ponerlas aqui). Se relacionan entre ellas por medio de las claves primarias y externas. Hice una pequeña prueba usando solamente 2 tablas, poniendo en la propiedad MasterSource de la tabla detalle el DataSource correspondiente de la tabla maestra, al igual que indicándole los campos en la propiedad MasterFields. Hasta aquí todo bien.
El problema me surge cuando quiero asociar los foreign keys de esa tabla "X" con las tablas Maestro (que son unas 5 tablas diferentes y que entre ellas no tienen relación).
No, si esto creo que ha quedado claro, yo me refería más bien a:

Tabla1: campo1, campo2,....
Tabla2: campo3
Tabla3: campo4
Tabla4: campo5, campo6
....

donde has de sustituir TablaX por el nombre de la tabla real y campoX por el nombre de los campos que intervienen en la relación

No obstante, si es mediante SQL que quieres acceder, te servirá un componente de Query (TADOQuery??) y poner la sentencia SQL pertinente

Código SQL [-]
select campos_que_quiero
from tabla9 
  inner join tabla1 on condición_de_relación
  inner join tabla2 on condición_de_relación
  inner join tabla3 on condición_de_relación
  inner join tabla4 on condición_de_relación
  inner join tabla5 on condición_de_relación
  inner join tabla6 on condición_de_relación
  inner join tabla7 on condición_de_relación
  inner join tabla8 on condición_de_relación
where
  condiciones_de_filtrado

Espero te sirva
Responder Con Cita
  #8  
Antiguo 15-05-2004
Avatar de Paoti
Paoti Paoti is offline
Miembro
 
Registrado: may 2003
Ubicación: Monterrey. N.L., México
Posts: 612
Poder: 21
Paoti Va por buen camino
Hola, buen dia a todos!

Cita:
el problema ha aparecido cuando necesito asociar como MasterSource 5 tablas que son maestras de una única

por la forma de tus posts entendi que una de las tablas( de las ocho) la estas haciendo maestra de la tabla principal..... (asi lo entendi)

Marial, por que no lo intentas al reves, ya que tu tabla unica es la que tiene la refenencia de las ocho tablas independientes, porque no asiganas a esta que sea la maestra, y a las demas que sean las de detalle, asi te debe de funcionar, Asi en cada una de las restantes, le asignas el datasource de la tabla principal, y en masterfield el campo que la relaciona la tala detalle con la tabla maestra. asi cuando cambies un dato en la tabla maestra (la unica) las demas se cambiaran....




que estes bien, y espero te sirva


P.S. Mañana es mi cumple!




*/*/*/*/*/*/*/*/*/*

Estudia y anda en la calle, por que asi obtendras dos educaciones y seras el doble de listo que los demas...



Paoti Rios
Responder Con Cita
  #9  
Antiguo 15-05-2004
Avatar de Paoti
Paoti Paoti is offline
Miembro
 
Registrado: may 2003
Ubicación: Monterrey. N.L., México
Posts: 612
Poder: 21
Paoti Va por buen camino
Cita:
Empezado por Paoti
Hola, buen dia a todos!

sorry, por este post, si no lo puedo borrar, no viene al caso, soloe stoy probando, porque en mi post anterior puse una cita, pero no me aparecio el nombre, y esta es otra prueba.. haber si funciona...



nos vemos
Responder Con Cita
  #10  
Antiguo 16-05-2004
marial marial is offline
Miembro
 
Registrado: may 2004
Posts: 26
Poder: 0
marial Va por buen camino
Gracias por la ayuda

Después de probar vuestros consejos he decidido hacer mi programa de la siguiente manera: he creado una vista con todo lo que necesitaba, y lo que pretengo es trabajar solo con esa vista. Que se me visualice entera en un DBGrid, y que algunas de las columnas las pueda buscar mediante DBlookupComboBox.

Tengo los siguientes componentes:
SQLConnection1
SQLQuery1 : "SELECT * FROM VISTA9"
DataSetProvider1 : haciendo referencia al sqlquery1
ClientDataSet1: haciendo referencia al provider1
DataSource1: haciendo referencia al ClientDataSet1

DBGrid1: que me visualiza la vista completa.
DBLookupComboBox1: que me visualiza el primer campo (PROVINCIA)
DBLookupComboBox2: que me visualiza el segundo campo (EMPRESA)
DBLookupComboBox3: que me visualiza el tercer campo (DEPARTAMENTO)
ETC

El problema que tengo ahora, es que si en la propiedad LisSource de los DBLookupComboBox pongo el DataSource1, me repite los campos tantas veces como se repiten en el DBGrid.

Alguien me puede dar algún consejo? Creo que esta es una buena opción de hacer la aplicación, no?

Muchas gracias.
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 11:44:02.


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