# Repartos de obras de teatro

## Repartos de obras de teatro

### Conceptos a tratar

* Enlaces [singular](/32/velneo-vdevelop/proyectos-objetos-y-editores/proyecto-de-datos/tabla/enlace.md#maestro) y [plural](/32/velneo-vdevelop/proyectos-objetos-y-editores/proyecto-de-datos/tabla/plural.md).
* Doble plural.
* Tabla de tipo [maestro normal con clave numérica](https://doc.velneo.com/32/velneo-vdevelop/analisis-de-bases-de-datos-para-aplicaciones-de-velneo/pages/-M7D76ml9ceGyVOhCei4#maestro-normal-con-clave-numérica).
* Tabla [histórica](https://doc.velneo.com/32/velneo-vdevelop/analisis-de-bases-de-datos-para-aplicaciones-de-velneo/pages/-M7D76ml9ceGyVOhCei4#histórico).

### Descripción

Realizamos el análisis de una base de datos que permitirá conocer las obras de teatro en las que ha participado un determinado actor como miembro del reparto.

Los actores podrán participar en el reparto de varias obras, y las obras estarán formadas por elencos compuestos por varios actores.

### Esquema de la aplicación

![](/files/-M7D7CZib4KE1HrCcBqM)

Declararemos dos tablas principales: ACTORES y OBRAS.

Tanto las obras como los personajes necesitan estar identificados uno a uno de forma inconfundible, por lo que deben tener una clave de acceso única, es decir, deben declararse como tablas de tipo maestro normal con clave numérica.

Ahora bien: ¿cómo las enlazamos? Volvemos a enunciar las dos frases:

* "En el reparto de una obra participan varios actores"
* En el caso más general, la segunda frase es: "un actor puede participar en varias obras".

Lo anterior es lo que denominamos **doble plural** o **plural en ambas direcciones**. Es decir, nos encontramos con un plural en los dos sentidos que resolvemos con una tabla [histórica](https://doc.velneo.com/32/velneo-vdevelop/analisis-de-bases-de-datos-para-aplicaciones-de-velneo/pages/-M7D76ml9ceGyVOhCei4#histórico) que haga de intermediaria: REPARTOS.

Esta tabla se crea de tipo histórico ya que no es necesario que tenga un campo ID único que determine un registro de la tabla.

Estableceremos entonces un enlace singular-plural entre las tablas de ACTORES y REPARTOS, y otro enlace singular-plural entre las tablas de OBRAS y REPARTOS.

Los registros de la tabla REPARTOS consisten en parejas obra-actor, de manera que asociamos todas las obras con cada uno de sus actores (o visto de otro modo, todos los actores con cada una de las obras en las que aparece).

Entonces, si nos situamos en la tabla OBRAS, por ejemplo, moviéndonos hacia su plural obtendremos todos los registros obra-actor en los que la obra es la seleccionada de la tabla OBRAS.

Una vez cargadas todas esas parejas, nos movemos hacia maestro en la dirección de ACTORES, de modo que cargamos todos los actores que aparecen en la obra.

El mismo procedimiento seguiremos para, dado un actor, obtener todas las obras en las que aparece.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.velneo.com/32/velneo-vdevelop/analisis-de-bases-de-datos-para-aplicaciones-de-velneo/repartos-de-obras-de-teatro.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
