Bases de Datos - problema de relacion entre tablas en DB

 
Vista:

problema de relacion entre tablas en DB

Publicado por jose (3 intervenciones) el 04/10/2016 06:09:58
buenas alguien me podría dar una idea de que hacer, mi problema es con 2 tablas una se llama **Personas** y la otra se llama **Grupos** estas estan relacionadas con una que se llama **Proyectos** proyectos recibe las claves las claves foraneas de Personas y proyectos...

la condición es que un **proyecto** o tiene una** personas** o un **grupo** la pregunta es como lo puedo hacer

ejemplo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
CREATE TABLE personas
(
  idPersonas int identity(1,1) not null,
  cedula int NOT NULL,
  nombre VARCHAR(15) NOT NULL,
  PRIMARY KEY (idPersonas),
  CONSTRAINT AK_Cedula UNIQUE(cedula)
)
 
CREATE TABLE grupos
(
  idgrupos INT identity(1,1) NOT NULL,
  nombreGrupo VARCHAR(25) NOT NULL,
  PRIMARY KEY (idgrupos),
  CONSTRAINT AK_idgrupos UNIQUE(idgrupos)
 )
 
 CREATE TABLE proyectos
(
  idproyecto INT identity(1,1) NOT NULL,
  nombreproyecto  VARCHAR(25) NOT NULL,
 fk_personas INT  NULL,
  fk_grupos INT  NULL,
  PRIMARY KEY (idproyecto),
  CONSTRAINT AK_idproyecto UNIQUE(idproyecto),
  FOREIGN KEY (fk_personas)
  REFERENCES personas (idPersonas),
  FOREIGN KEY (fk_grupos)
  REFERENCES grupos (idgrupos)
)
así las hice pero me da errores ... lo que yo quiero exactamente es que en proyectos me recibas solo a **personas o a grupos** pero no ambas si alguien me sugiere algo se lo agradezco
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 71
Bronce
Ha mantenido su posición en Bases de Datos (en relación al último mes)
Gráfica de Bases de Datos

problema de relacion entre tablas en DB

Publicado por Juan R. (52 intervenciones) el 05/10/2016 00:35:17
Buenas Jose

Es indispensable tener esas dos tablas (personas y grupos)? Lo digo porque podrías hacer las dos tablas en una y si eso poner un campo lógico que indique si es grupo o no.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

problema de relacion entre tablas en DB

Publicado por jose (3 intervenciones) el 05/10/2016 09:52:10
me suena lo que estas sugiriendo tal vez a lo que te refieres es que haga una sola tabla de solicitantes y grupos y que exita una opcion para decir que si pertenece a un grupo que llene esos campos de lo contrarios que sean nulos para poder dejarlos en blanco
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar