Creación de BD con selecciones alternativas |
Responder
|
| Autor | |
Hedera
Nuevo
Unido: 19/Marzo/2025 Localización: Ourense Estado: Sin conexión Puntos: 3 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Tema: Creación de BD con selecciones alternativasEnviado: 19/Marzo/2025 a las 19:28 |
|
Buenas tardes,
Mi duda seguramente es bastante básica para el nivel que hay en este foro, acabo de registrarme aunque hace tiempo que lo consulto. Pretendo crear una base de datos para distintos tipos de expedientes (por ejemplo 'Altas', 'Bajas', 'Modificaciones'). Cada uno de esos tipos de expedientes tiene unos trámites asociados, me invento algún ejemplo: En 'Altas': 'Informe existencia empresa', 'Requerimiento alta AEAT' En 'Bajas': 'Resolución baja CNAE', 'Baja en el censo de empresarios' Tengo una tabla (núm. 1) con el listado de expedientes y en esta tabla el campo 'Tipo de expedientes' estaría vinculada con una segunda tabla (núm. 2) con los tres tipos de expedientes. Luego tengo otra tabla (núm. 3) con una lista de trámites para cada tipo de expediente. En una cuarta tabla (núm. 4) quiero incluir los trámites que van ocurriendo en cada uno de los expedientes, de manera que el expediente se va repitiendo asociado a cada trámite. Pretendo que al escribir el expediente en esta cuarta tabla reconozca que ya es un expediente de 'Alta' en la tabla núm. 1 y que solo me deje seleccionar los tipos de trámites que están especificados en la tabla 3 para ese tipo de expedientes. Muchas gracias de antemano por la ayuda. Un saludo
Editado por Hedera - 19/Marzo/2025 a las 19:32 |
|
![]() |
|
Plinio Montano
Habitual
Unido: 10/Marzo/2015 Localización: Cuba Estado: Sin conexión Puntos: 169 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 19/Marzo/2025 a las 23:40 |
|
Hola Hedera, imagino que ante todo tengas un diseño de BD que establezca realaciones e integridad referncial entre estas tabal.
Tabla #1: (Es el catálogo de Tipos de Expediente) Nombre: Tipos de Expedientes - Tipo_de_Expediente, (Texto) llave - IdTipoExp (id Autonúmerico, Indexasado sin duplicados) ... puede tener otros campos según tu interés Tabla #2: (Es el catálogo de Tramites) Nombre: Trámites - Descripción del Trámite, (Texto) llave - IdTramite (id Autonúmerico, Indexasado sin duplicados) Tabla #3: (Es la tabla que relaciona los Tipos de Expediente con los tramites que abarcan, permite que un mismo trámite se pueda ralizar para diferentes tipos de expediente) Nombre: Trámites x Tipo de Expediente - IdTipoExp (Entero Lago, Indexasado con duplicados) llave - IdTramite (Entero Lago, Indexasado con duplicados) llave Tabla #1 (IdTipoExp) 1 -----> ∞ (IdTipoExp) Tabla #3 (IdTramite) ∞ <-----1 (IdTramite) Tabla #2 Tabla #4: (Es el control de los expedientes, donde le decimos a cada expediente de que tipo es) Nombre: Expedientes - NroExp, (Texto) llave - IdTipoExp (Entero Lago, Indexasado con duplicados) llave Tabla #1 (IdTipoExp) 1 -----> ∞ (IdTipoExp) Tabla #4 Le propongo una tabla para catálogo de tramites (Tabla #2) pensando en que un mismo tramite puede estar en más de un tipo de expediente. Luego de haber captado los datos en cada tabla, si ejecuta la siguiente consulta podrá obtener la lista de tramites por expediente. SELECT Expedientes.NroExp, Trámites.[Descripción del Trámite] FROM ((Expedientes INNER JOIN [Tipos de Expedientes] ON Expedientes.IdTipoExp = [Tipos de Expedientes].IdTipoExp) INNER JOIN [Trámites x Tipo de Expediente] ON [Tipos de Expedientes].IdTipoExp = [Trámites x Tipo de Expediente].IdTipoExp) INNER JOIN Trámites ON [Trámites x Tipo de Expediente].IdTramite = Trámites.IdTramite; |
|
|
pmv
|
|
![]() |
|
Plinio Montano
Habitual
Unido: 10/Marzo/2015 Localización: Cuba Estado: Sin conexión Puntos: 169 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 19/Marzo/2025 a las 23:43 |
|
El campo IdTipoExp en la Tabla #4 no tiene que ser un campo llave
|
|
|
pmv
|
|
![]() |
|
Hedera
Nuevo
Unido: 19/Marzo/2025 Localización: Ourense Estado: Sin conexión Puntos: 3 |
Opciones de entrada
Gracias(0)
Cita Respuesta
Enviado: 20/Marzo/2025 a las 22:09 |
|
Hola!!
Muchas gracias por tu ayuda!! Me resulta un poco complejo para el nivel que tengo, pero más o menos puedo seguir las explicaciones, así que lo probaré con detenimiento. Gracias de nuevo!!
![]() |
|
![]() |
|
Responder
|
|
|
Tweet
|
| Ir al foro | Permisos de foro ![]() Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |