[PREGUNTA] - Diferencia entre Non-Identifying y Identifying

Publicado en 'Programación' por celsoxvi, 10 Nov 2011.





  1. celsoxvi

    celsoxvi Miembro de bronce

    Registro:
    1 Mar 2009
    Mensajes:
    1,196
    Likes:
    72




    Hola Comunidad;
    Bueno tengo una Duda con Respecto a un Concepto que no me queda bien en Claro, Diferencia entre Non-Identifying y Identifying

    Dice según el Concepto:

    Non-Identifying: Cuando en la Tabla B en donde va la Relacion (Muchos o 'N'), es Donde la Clave Primaria de la Tabla A pasa a FK en la Tabla B.

    Identifying: Cuando en la Tabla B en donde va la Relacion (Muchos o 'N'), es donde la Clave Primaria de la Tabla A pasa a PK En la Tabla B.

    Estoy usando el Workbench, pero no se en que momento utilizarlo, Alguien me lo Puede Explica porque si por ejemplo, Supongamos que tengo la Entidad Artista y Entidad Album, Sabemos que un Artista puede Tener Muchos Album y Muchos Album le Pertenecen a un Artista, Pero si Por ejemplo si no Existe el Artista, tampoco puede Existir algun Album esto pasaria a hacer Identifying, Pero si por ejemplo lo pongo non.Identifying y pongo que no me permita campos null al FK, Esto se comportaría de la misma forma que el Identifying. Es aqui en donde me Confundo.
     


  2. eduar2083

    eduar2083 Miembro frecuente

    Registro:
    26 Jul 2011
    Mensajes:
    224
    Likes:
    46
    La entidad Album sería débil de Artista por dependencia de existencia
    Yo lo implementaría de la suguiente forma en T-SQL.
    Código:
    create table TBartista
    (
     cod_artista  char(8)  not null,
     nom_artista  varchar(30) not null,
     telf_artista char(7)  not null
    )
    go
     
    create table TBalbum
    (
     cod_album  char(5)  not null,
     cod_artista  char(8)  not null,
     nom_album  varchar(30) not null,
     fec_album  date  not null
    )
    go
     
    alter table TBartista
    add constraint PK_TBartista
    primary key (cod_artista)
    go
     
    alter table TBalbum
    add constraint PK_TBalbum
    primary key (cod_album)
    go
     
    alter table TBalbum
    add constraint FK_TBalbum_TBartista
    foreign key (cod_artista) references TBartista
    go
    
    Está claro que debe existir data en la tabla Artista para que se pueda ingresar data en la tabla Album.

    Un saludo.
     
  3. celsoxvi

    celsoxvi Miembro de bronce

    Registro:
    1 Mar 2009
    Mensajes:
    1,196
    Likes:
    72
    Claro dependencia y NO-dependencia, En donde puedo Encontrar mas Ejemplo de ello, Es que es ahí en donde veo que a veces tengo problemas.
     
  4. eduar2083

    eduar2083 Miembro frecuente

    Registro:
    26 Jul 2011
    Mensajes:
    224
    Likes:
    46
    Había un curso muy bueno aquí que partía desde el diseño de la BD's hasta su implementación en MySql, pero parece que el enlace ya está roto, de ser así, revisa este. En todo caso te recomendaría comprarte un libro de diseño e implementación de BD's.

    Un saludo.
     
    A celsoxvi le gustó este mensaje.
  5. celsoxvi

    celsoxvi Miembro de bronce

    Registro:
    1 Mar 2009
    Mensajes:
    1,196
    Likes:
    72
    Ok, Gracias por la Ayuda, Suerte y Hasta Luego.