Bien, lo primero que vamos a crear es la clase categoría y le tenemos que relacionar con producto.
Entonces nos vamos a ir al Package Model Modelo, al inserto una clase categoría.
Con atributos como el Heidy del tipo blog y el nombre.
El
color me tras transceptor, seleccionamos los dos.
Ok, lo siguiente tenemos que establecer la relación entre producto y categoría.
Vamos a cerrar.
Cerramos la pestaña Project con alguno.
Nos vamos a ir a producto por acá.
Bien.
Subimos por acá.
Tenemos que crear el atributo categoría.
Claro, porque es parte del producto del tipo categoría.
Y al final bajamos.
Transceptor de categoría al insert GT Setter categoria.
Listo.
Ahí tenemos establecido la relación.
Un objeto relación con otro.
Ya lo hemos visto siempre es un atributo.
Está compuesto por otro.
De esta forma podemos tener objeto mucho más complejo que a su vez está compuesto por geto simple,
mientras que las relaciones en base a datos con tablas e a través de campos con el Heidy Yave foráneas
donde se guarda el Heidy o la llave primaria del lado tratables que está relacionada.
Entonces a eso se le llama una ya extranjera que pertenece a otra tabla.
Una Franki está molesto con la relación.
Ahora solamente tenemos que modificar la consulta, así que nos vamos a ir al repositorio.
Y acá modificamos.
Vamos a subir en el SELECT.
Por acá.
Eléctrico from productos.
Acá tenemos que crear el Yeung y dar un Alya, claro, para no colocar el nombre completo, la tabla,
por ejemplo, productos a categoría.
Cuando hacemos referencia a Heidy o categoría Heidy al campo, es mucho mejor utilizar un alias que
como nombre abreviado que le damos.
Entonces con AZ por ejemplo Pepe o en realidad puede ser cualquiera, puede ser PR de producto o como
queramos.
Acá el INDERT Jaime que para establecer la relación entre producto y la otra tabla.
Entonces por eso inner join la tabla categorías.
Recuerden que es en plural.
También le damos un alias C y acá con el on puede ser en mayúsculas o minúsculas.
Da lo mismo.
Lo mismo que las.
También puede ser con mayúscula minúscula.
Y acá la relación con paréntesis donde la tabla producto acá para escribir productos.
Punto.
Categoría Heidy o el alias P punto se fijan es mucho más simple categoría de guión bajo Heidy igual
el alias categoría C punto Heidy y cerramos paréntesis.
Bien, pero si se fijan acá estamos devolviendo todos los campos con el asterisco SELLECK, todos los
campos de ambas tabla.
Pero podríamos tener un problema de ambigüedad de nombres.
Por ejemplo en la tabla producto tiene Leydi y también tiene el nombre producto, pero en la tabla categoría
también existe el campo nombre y el campo.
Entonces va a quedar como en vivo con los campos.
Heidy y nombre no se sabe si se refiere a la tabla, categorías o productos, entonces podremos colocar
que se aplique a todos los campos de productos.
Vamos a colocar P por el alias puntero asterisco, es decir, todos los campos de producto, pero de
categorías.
Solamente me interesa el nombre, la categoría, entonces sé de categoría punto nombre y le damos un
alias para que sea distinto nombre del producto.
Le vamos a llamar categoría o nombre.
Categoría como queramos.
Sepulto nombre como categoría.
Perfecto.
Hay queda mucho mejor.
Y les di la categoría de lo mismo porque lo tenemos en categoría Heidy de producto.
Así que tenemos todo, incluso esto mismo.
Bueno, de hecho voy a bajar acá porque está demasiado tenso, como por acá, por acá y en el Jaynes
por acá.
Enter de forma automática va a concatenar, iba a bajar una línea y vamos a copiar esto mismo.
A partir de acá los seleccionamos y vamos copiando.
Copiamos todo esto incluso abajo también acá lo copiamos Control C y vamos a bajar al por Heidy.
Entonces por ahí di por acá, vamos a quitar el asterisco from productos y vamos a dejar también acá
el join con todo lo demás.
Pero además el WHERE, porque la idea es filtrar un solo producto mediante Leidy.
Entonces seleccionamos todo acá, pero si en el where solamente esto lo quitamos y pegamos y acabamos
a modificar, porque aquí también el pegar con el salto línea.
No, no, esto acá lo vamos a quitar.
Seleccionamos esto.
Esto lo quitamos.
Lo dejamos hasta ahí nomás con el espacio.
Bajamos y acá también.
Entonces esto que generó por acá lo vamos a quitar ahí.
Entonces Selleck todo lo de producto y solamente nombre.
Categoría como categoría de la tabla producto el alias importante, un espacio en blanco inner join
categorías y establecemos la relación entre la ya foránea categoría Heidy de producto con la llave primaria
en categorías.
Si son iguales va a colocar el nombre y la categoría en la consulta where el aire.
Perfecto.
Bien.
Ahora, qué pasa con guardar más abajo?
Pero antes de guardar tenemos que mapear más bien la consulta.
Se fijan acá en por Heidy.
Acá tenemos que crear producto y lo mismo en buscar todos en distar, acá también crear productos.
Entonces nos vamos a ir este método con control B y tenemos que pasar la categoría al producto crea
la relación.
Entonces por acá bajamos categoría, vamos a crear una instancia.
Recuerden que ya viene Leydi de la categoría una consulta, viene Leydi el nombre, entonces podemos
crear el objeto categoría y se lo pasamos a producto.
Importamos categoría igual new categoría.
Categoría Puntos Teddy .0, Leydi RC Punto Get Lonko Categoría Heidy Guión bajo Eubea
Qué nombre le pusimos como alias?
Categorías Se acuerdan?
Categoría Incluso lo podremos revisar si subimos en el método.
Acá, acá en Distar un poquito más abajo por acá le pusimos sepulto nombre, categoría, apunto nombre
cómo categoría se fijan?
Entonces ese nombre tiene que ir en el resulted en el cursor abajo volvemos categoría, pero no de acá.
Me quedo aquí porque es con el result set.
No, no, acá rc, rc, punto.
Nyet, es trenca.
Ese claro del Resucitado se el nombre.
Lo tenemos.
Que guet string nombre campo categoría a ese extremo el objeto categoría con el Heidy y el nombre se
lo tengo que pasar a pro-ducto entonces ahora P punto set categoría categoría de Bejan.
A él le pasamos la categoría.
Ya tenemos tal icé la relación entre producto y categoría con los datos de la consulta.
Ven, vamos a subir.
Ahora sí que sí vamos a ir a guardar.
Claro, podríamos querer guardar con la categoría.
Entonces por acá podremos colocar categoría de goma category y como tenemos un nuevo campo acá tengo
que agregar otro valor más coma.
Y si no pregunta pero bien, se lo tengo que pasar también al inserto y también a la tatto, pero acá
tengo que tener cuidado con las posiciones.
Es importante la idea de que tanto en el arte como en el INSER el category sea exactamente la misma
posición en el índice, en el parámetro igual que nombre, igual que precios se fijan en nombre y precio
es el 1 y el 2 tanto para el ATE como paralicen.
Entonces diría exactamente igual.
Vamos a modificar acá, vamos a quitar, vamos a decir que categoría Heidy es el 3, lo dejamos acá.
Nombre precio por acá.
A ese entonces corresponde al 3 categoría litres y acá también en el arte entonces koma categoría Heidy
igual si no pregunta si se fijan uno, dos, tres en edad de uno, dos, tres.
En el INSER.
Entonces acá es el 3 y el Heidy en el ataque y ficha registro en el insert es el 4.
Entonces tenemos que modificar acá 4 y 4 y acá agregar el 3 para ambos.
Entonces Steinmetz punto set lonko tres coma producto punto nyet categoría punto guet.
Heidy se fija en relación al objeto producto punto Geet Categoría Por qué se Leydi de la categoría no
el producto.
Punto JPII del tipo lonko.
Ahí establecemos la categoría Heidy tanto para alante como paralizÃ ya lo tenemos completito.
Incluso podríamos probar ahora, pero no lo vamos a visualizar.
Por qué?
Veamos.
Vámonos a control TAF por acá no vamos a pro-ducto.
Veamos el toString.
Te dejan.
Aparece el nombre bueno, el Leydi nombre precio y la fecha, pero no tenemos la categoría.
Entonces la podríamos agregar acá simplemente.
Bueno, vamos a concatenar
categoría punto get nombre.
Solamente quiero mostrar nombre Leidy.
No me interesa el nombre Yessi.
Ahí tenemos el nombre en el string control TAB.
Lo vamos a ejecutar, nos vamos a ir a ejemplos JDBC a por ejemplo JS es para el insert, se fijan,
es para crear, aunque podríamos crear otro producto, pero tendríamos que asignar una categoría y lo
importante que sea una categoría existente en la Rato.
Es decir, siempre cuando queremos un producto se tiene que asociar a una categoría que ya exista.
Podríamos crear un nuevo producto.
Acá lo vamos a modificar, por ejemplo teclado mecánico Red Dragon, por ejemplo, teclado red dragón,
mecánico, perfecto precio no sé 450 la fecha y bien el producto tienen que ir con la categoría siempre.
Ahora como establecemos la relación?
La tenemos que crear, lo tenemos que crear con una categoría existente, porque si no le pasamos la
categoría va a lanzar un error.
Es correcto?
Por qué?
Porque las categorías en NULL y si nos vamos al repositorio, por ejemplo, acá al tratar de guardar,
va a embocar acá producto, punto.
Qué categoría se fijan y qué categoría va a ser NULL?
Va a lanzar un pulpo interceptan?
Obviamente no se va a insertar.
Entonces ahora siempre tiene que ir de la mano con la categoría, lo mismo que el átate el actualizar.
Ejemplo JDBC Pero bueno, simplemente vamos a crear una categoría con el Heidy.
Al final lo que importa Leydi, que la llave foránea no tanto el nombre, pero más o menos ya hacemos
las tres categorías que tenemos con sus Heidy son tres categorías Heidy 1 deporte Leidy 2 Tecnología
Heidy 3 Computación entonces teclado Red Dragon es el 23 sería computación categoría categoría importamos
con Alt Intro igual New Categoría Perfecto categoría, apuntó Zvi.
Y le pasamos el 3 porque se llama computacion 3 L mayúscula, producto, punto, set, categoría y le
pasamos categoría.
Se dejan importante también establecer la relación.
Queremos el objeto bruto, un nuevo objeto producto con una categoría, pero esta categoría tiene que
existir en la Ayato tiene que existir el edites una forma es ésta otra forma sería ir a buscar la categoría
por el Heidy a la base y se la establecemos con un bucar purity en el repositorio.
Realizar una consulta a la tabla categoría pero mediante Leydi de esa categoría la obtenemos y se la
asignamos.
Ahora si vamos a probar cheff control F10.
No importa, acá dice que con una Audi es ambiguo.
En la consulta eso igual lo podríamos solucionar y lo vamos a ver.
Pero bueno, al menos acá tenemos distar.
Un mundo perfecto.
Y acá inserta, pero te guardo con éxito el edi 4, porque recuerden que el 3 lo borramos.
Teclado Red Dragon con computación.
Ahora tengo que ver esta acepción que lanzó en el ver por ahí, por acá.
Repositorio prohibi Acá lanzo la acepción que dice que la columna Heidy en la cláusula where es ambigua.
Lo vamos a solucionar.
Artido cerramos.
Repositorio Subimos al método por ahí.
Acá es claro.
Acá está el problema, porque tenemos dos tablas, se fijan en esta consulta productos y la tabla categoría
con el join.
Y acá solamente dice Heidy.
Pero ambas tablas tienen el Heidy y acá tengo que indicar a cual Heidi se refiere si es a producto P.N
Heidy o a categoría conteni.
Por supuesto que es el producto Montain.
Tenemos que ser explícito cuando trabajamos con joint con Inner Join.
A qué campo se refiere de la tabla?
A cuál Heidy?
Entonces sería producto punto diría.
Ahora se que si volvemos ejemplo JDBC lo vamos a modificar acá 550.
Subimos por ejemplo.
Un Raiza y volvemos alenta.
Acá vamos a crear otro producto, pero con la misma categoría, con la categoría computacion, cheff,
controles C10.
Se fijan ahora no da error.
Y Siddha la consulta o tret por Heidy Deporte Bicicleta acalle tenemos Red Dragon se fijan con computacion,
bicicleta deporte sony tibby es tecnología llega tenemos producto guarda con éxito teclado reiser mecánico
550 computacion se fijan relaciones de tabla.
Bueno para lo que blyth ejemplo JDBC Eliminar acá no es ningún cambio porque solamente elimina por el
Heidy nada más.
Acá la categoría no tiene nada que hacer, pero en el átate ejemplo JDC ADDED Bueno a casi.
Claro, vamos a modificar un producto que exciten hace rato.
Es decir, modificar el registro 3, por ejemplo.
Bueno, el trella no existe porque lo borramos.
Es importante.
Entonces acá lo tenemos que cambiar porque siempre vamos a modificar un producto que excita un registro
que exista.
En este caso el 3 se borro.
Entonces si quiero por ejemplo modificar el 5, simplemente acá colocamos 5, o el 4 o el 2 se fijan.
En este caso el 5 es teclado raizes mecánico.
Así que está bien, le podríamos poner, no sé, otra marca Corsair Caul 95, por ejemplo, con un valor
de 700.
Está bien.
Entonces vamos a modificar el teclado.
Raizes mecánico que tenemos acá hay disminuirlo por teclado Corsair 95, CA 95 con el precio 700.
Eso vamos a modificar, pero acá también tenemos que pasar la categoría, por ejemplo.
Bueno, ya tiene la categoría computación, le pasamos la misma computación o le pasamos otra categoría?
Se fijan?
Pero si le tengo que pasar la categoría, porque lo mismo si volvemos a repositorio podría lanzar un
pulpo, intercepten, nos vamos acá repositorio implemento nos vamos al método Guardar acá en el ADAT
categoría IDIA.
Entonces también pasa a la categoría 100 nula 100 null.
Va a lanzar un golpe intercepto.
Vamos a cerrar.
Volvemos a ejemplo J.S Habet en el que estamos y tengo que crear la categoría, establecer esta relación.
Importamos con Alt Enter igual new categoría.
Recuerden, lo que importa acá es el Heidy.
Entonces categoría.
Punto Set Heidy, establecemos el di de la categoría que queremos asignar a este producto que estamos
modificando.
Pues es la misma.
La puedo mantener o la puedo cambiar para variar.
Le vamos a poner tecnología porque también he computacion, pero también es tecnología.
Va a cambiar de la categoría 3 computacion a la categoría 2 tecnología.
Pero no pasa nada si no le asignamos la categoría de producto.
Entonces importante producto, punto, set, categoría y listo.
Veamos cheff control F10.
Vamos a ver.
Acá tenemos teclado el 4, Heidy 4.
Por qué se estaba cambiando?
Nos están cambiando con el Leydi 5.
Acá Reisen Mecánico Heidy 5 12 Produto 5 teclado corsair y 5 mecánico pre-cios €700 y le asignamos la
categoría 2.
Tecnología acá es computacion.
Veamos qué pasó.
Cambié un poco el orden, pero está bien.
Hoy di 5.
Ahora cambió teclado Corsair canó venticinco, mecánico precio 700 y ahora tecnología.
No es computación.
Ahora sé que estás molesto.
Estamos combinando todo lo que basea todo.
JSE con consultas, pero también con relaciones de objeto.
Todo lo que ya hemos venido trabajando desde antes obieto.
Composiciones con atributos donde un objeto está compuesto por otros se fijan.
Pero finalmente estos objetos están mapeado de cierta forma a una tarla en la Cerrato a campos y las
tablas.
Las relaciones la manejamos con Franki con llave foráneas, mientras que en los objetos las relaciones
se manejan con atributos y composición.
Lo dejamos acá y continuamos en la siguiente clase.