Cita:
Iniciado por Libras que entiendes por vista??? dices que una vista par insertar, ese es un concepto desconocido para mi jejejejeje, y puedes poner un poco de los datos que tienes y lo que quieres obtener para poder darte una respuesta con "codigo exacto" como tu mencionas???
Columna1: De Tabla 1: Elemento
Columna2: De Tabla 2: Tipo
Columna3: De Tabla 3: Subtipo
Columna4: De Tabla 4: SubSubtipo
Columna5: De Tabla 5: SubSubSubtipo.
Tabla 1.- Elementos
Columna Id Columna Elemento
1 Tornillos
2 Tuercas
Tabla 2.- Tipos
Columna Id Columna Tipo
1 Ferreteria
2 Fontanería
3 Electrónica
Tabla 3.- Subtipo
Columna Id Columna SubTipo
1 Tornillería
2 Herramientas
3 Pegamentos
4 Juntas
5 Boyas cisternas
Tabla 4.- SubSubtipo
Columna Id Columna SubSubTipo
1 Maderas
2 Aceros
3 Destornilladores
4 Martillos
5 Siliconas frias
6 Siliconas calientes
Cada vez que vamos a una tabla inferior (con un sub más) tenemos todas las divisiones de todos los tipos de la tabla superior. Por ejemplo, en tabla 3 (subtipos) tenemos todos los subtipos del registro 1, ferretería. Pero también tenemos todos los subtipos del registro 2, Fontanería.
Tienen que estar organizados así porque el mismo elemento puede ser catalogado de, por ejemplo, ferretería y fontanería. Por ejemplo, una misma tuerca puede servir para fijar una llave de gas... pero también para fijar una llave de agua. Además, hay subtipos que pertenecen a 2 tipos a la vez.
En cuanto a lo que es la vista... en SQL Server 2008 hay un tipo de tabla llamada "vista". Según me han dicho estas tablas son consultas pre-hechas que guardan sus resultados en memoria, por lo que consultarlas es mucho más rápido.
Estoy un poco perdido a la hora de hacer las relaciones. No se si he hecho bien haciendo una de estas vistas. Lo que quiero es poder dar de alta un elemento, por ejemplo, un tornillo... y que se genere un nuevo registro en mi tabla de elementos, y luego guardar la relación de los tipo/s, subtipo/s y subsubtipos a los cuales pertenece.
He hecho distintas tablas para tipos, subtipos, subsubtipos porque son datos que siempre van a estar muy repetidos... y me dijeron que en una BBDD cuanto menos se repitan los datos mejor.
Por último comentar que, como los tipos, subtipos, etc son siempre los mismos... pues tienen un número de registros fijos. Esos no van a cambiar. (Y ya he puesto esas tablas como solo lectura para el usuario que va a acceder a la BBDD)
Y como mencioné antes... todas las tablas, salvo la de elementos lleva un campo "Codigo1" (para tabla 2), "Código2" (para tabla 3) etc.
Y lo que quiero obtener en última instancia es un listado completo de todos los elementos con sus códigos asociados y ordenados primero numéricamente por el código y después alfabéticamente por el nombre del elemento, por ejemplo:
Elemento - Codigo
Martillo - 01010002
Tornillo - 01010002
Tuerca - 01010002
Tuerca - 01010003
Tornillo - 01020101
Tuerca - 01020102
Tuerca - 01020103
(Y dichos códigos finales son la concatenación de los códigos de los distintos tipos, subtipos, etc. De forma que solo viendo el código final se puede saber qué tipo de elemento es... pues los 2 primeros dígitos son el tipo, los 2 siguientes el subtipo, los 2 siguientes el subsubtipo y los 2 últimos el subsubsubtipo)
Si tengo que cambiar cualquier cosa de lo que ya tengo hecho coméntamelo y lo cambio.