2011-02-24 35 views

Respuesta

7

Recuerde la cardinalidad siempre es una relación con otra cosa.

Max Cardinality (Cardinality) Siempre 1 o muchos. La clase A tiene una relación con el paquete B con cardinalidad de uno, lo que significa que a lo sumo puede haber una ocurrencia de esta clase en el paquete. Lo contrario podría ser un paquete tiene un máximo Cardnality de N, lo que significa que no puede haber N número de clases

Min cardinalidad (Opcionalidad) simplemente significa "requeridas". Siempre es 0 o 1. 0 significaría 0 o más, 1 ore más

Hay toneladas de buenos artículos que explican esto, incluyendo algunos que explican cómo incluso la propiedad "diagram". Otra cosa que puede buscar es la cardinalidad/Opcionalidad (OMG Términos) que explica la misma cosa, Opcionalidad es cardinalidad "Min" es "Max",


De http://www.databasecentral.info/FAQ.htm

Q: No puedo vea cómo se usa la cardinalidad máxima al crear relaciones entre tablas de datos. Sin embargo, no veo cómo se aplica la cardinalidad mínima al diseño de la base de datos. ¿Qué me estoy perdiendo?

A: Tiene razón al notar que la cardinalidad máxima es una característica más importante de una relación que la cardinalidad mínima. Toda la cardinalidad mínima le dice que es el número mínimo permitido de filas que debe tener una tabla para que la relación sea significativa. Por ejemplo, un EQUIPO de baloncesto debe tener al menos cinco JUGADORES, o no es un equipo de baloncesto. Por lo tanto, la cardinalidad mínima en el lado de JUGADOR es cinco y la cardinalidad mínima en el lado de EQUIPO es uno.

Se puede argumentar que una persona no puede ser un jugador a menos que esté en un equipo, y por lo tanto la cardinalidad mínima de TEAM es obligatoria. De manera similar, una organización no puede ser un equipo de baloncesto a menos que tenga al menos cinco jugadores. La cardinalidad mínima de JUGADORES es obligatoria también. Uno podría argumentar en la dirección opuesta también. Cuando un jugador abandona un equipo, ¿deja de ser un equipo hasta que se recluta un reemplazo? No puede participar en ningún juego, pero ¿deja de ser un equipo? Este es un ejemplo del hecho de que cada situación individual debe evaluarse en sus propios términos. ¿Cuál es la verdad en ESTA instancia particular? La próxima vez que surja una situación similar, la decisión podría ser diferente, debido a circunstancias diferentes. trabajo

0

Vamos con un ejemplo -

Students toma Class. Aquí ambos Students y Class son entidades. Una escuela puede o no tener estudiantes matriculados en un semestre en particular. Piense en una escuela que ofrece cursos en el semestre de verano, pero ningún estudiante está interesado en participar. Entonces, la cardinalidad del estudiante puede ser (0, N). Pero si un Class está pasando significa que debe tener al menos 1 estudiante registrado. Por lo tanto, su cardinalidad debe ser (1, N). Por lo tanto, debe verificar si la entidad que participa en la relación es parcial o total, que decide su cardinalidad en la relación.

Espero que ayude.

3

De acuerdo con otras respuestas, esta es una vista ligeramente diferente. Pensar en términos de opcionalidad y multiplicidad. Tome un ejemplo: Person tiene Address.

Opcionalidad pregunta: ¿Necesita cada Person tener un Address? Si es así, la relación es incondicional, lo que significa que la cardinalidad mínima es 1. De lo contrario, la cardinalidad mínima es 0.

Multiplicidad pregunta: ¿Puede Person tener más de uno Address? Si no, la cardinalidad máxima es 1. Si es así, la cardinalidad máxima es> 1. En la mayoría de los casos es ilimitada, por lo general denota N o *.

Ambos son importantes. Las asociaciones no opcionales hacen que el código sea más simple ya que no es necesario probar la existencia antes de eliminar la referencia: p.

a=person.address() 

en lugar de

if (person.address !=null) { 
    a=person.address() 
} 

direcciones son un buen ejemplo de por qué es importante Multiplicidad. Demasiadas aplicaciones comerciales suponen que cada persona tiene exactamente una dirección, por lo que no puede hacer frente cuando las personas tienen, por ejemplo, casas de vacaciones.

Es posible restringir aún más la cardinalidad, p. el motor de un automóvil tiene entre 2 y 12 ciclomotores. Sin embargo, esas limitaciones a menudo no son muy estables (Bugatti ahora ofrece un motor de 16 cilindros). Entonces las preguntas importantes son opcionalidad y multiplicidad.

hth.

+0

Limpio y simple, tales ejemplos superan fácilmente las teorías, los artículos largos para obtener una comprensión fundamental. – Onewildgamer

0

cardinalidad máxima:
1 a 1, 1 a muchos, muchos a muchos, muchos a 1

Cardinalidad mínima:
Facultativo Obligatorio, Facultativo opcional, obligatoria a opcional, obligatoria Obligatorio

0

A su pregunta, '¿cuál es el uso de la opción en el diseño de la base de datos?': Resulta muy útil en los siguientes escenarios.

Al diseñar 2 tablas con relación de 1 a 1, se verá confundido para decidir dónde (en qué tabla) tener la clave externa. Es muy fácil decidirlo, si tiene la opción 1 para una tabla y 0 para la otra tabla. La clave externa debe estar presente en la primera. Hay muchos otros usos para él también.

Espero que ayude.

0

cardinalidad máxima: - uno-uno, uno-muchos, muchos-muchos

cardinalidad mínima: - cero o uno

This link describe mi respuesta, por qué es así, ¿cuál es la representación, y lo que es.

Cuestiones relacionadas