Este es un lenguaje sencillo que no tiene muchas instrucciones pero es extremadamente útil para trabajar con nuestras bases de datos. A continuación codificaré las 10 bases de datos de los ejercicios con los que he trabajado en las últimas 2 entradas de este blog, habrá imágenes de la descripción de las tablas en el MySQL Command Line Client, así como el código con el que la hice.
Ejercicio 1
>create database ejercicio1;
>use ejercicio1;
>create table coche(nodeaccidentes int(10) primary key not null, idcliente varchar(10) not null);
>create table cliente(idcliente varchar(10) primary key not null);
Ejercicio 2
>create database ejercicio2;
>use ejercicio2;
>create table cliente(DNI varchar(20) primary key not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null, calle varchar(15) not null, nocalle int(6) not null, codigopostal varchar(5) not null, ciudad varchar(20) not null, idconcesionario varchar(10) not null);
>create table telefono(DNI varchar(20) not null, telefono int(15) not null);
>create table mecanico(DNI varchar(20) primary key not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null, salario int(10) not null);
>create table concesionario(idconcesionario varchar(10) primary key not null);
>create table automovil(matricula varchar(10) primary key not null, modelo varchar(4) not null, marca varchar(15) not null, color varchar(15) not null, nuevo varchar(2) not null, unidades int(10) not null, kmrecorrridos int(10) not null, DNI varchar(20) not null);
>create table repara(DNI varchar(20) primary key not null, matricula varchar(10) not null, fecha DATE not null, horas int(10) not null);
Ejercicio 3
>create database ejercicio3;
>use ejercicio3;
>create table jugador(idjugador varchar(10) primary key not null, nodecamiseta int(2) not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null, idequipo varchar(10) not null);
>create table equipo(idequipo varchar(10) primary key not null);
>create table partido(idpartido varchar(10) primary key not null, resultado varchar(5) not null, idequipo varchar(10) not null);
>create table juega(goles int(2) not null, pases int(4) not null, faltas int(2) not null, idpartido varchar(10) not null, idjugador varchar(10) not null);
Ejercicio 4
>create database ejercicio4;
>use ejercicio4;
>create table articulo(noarticulo int(10) primary key not null, existencia int(10) not null, descripcion varchar(1000) not null, idempresa varchar(10) not null);
>create table fabrica(nofabrica int(10) primary key not null, artproducidos int(5) not null, noarticulo int(10) not null);
>create table telefonofabrica(nofabrica int (10) not null, telefono varchar(12) not null);
>create table empresa(idempresa varchar(10) primary key not null);
>create table pedido(cabecera varchar(10) primary key not null, nocliente int (10) not null, fechapedido DATE not null, hora TIMESTAMP not null, cantidad int(10) not null, noarticulo int(10) not null, calle varchar(15) not null, nocalle int(6) not null, colonia varchar(5) not null, ciudad varchar(20) not null, idempresa varchar(10) not null);
>create table cliente(calle varchar(15) not null, nocalle int(6) not null, colonia varchar(25) not null, ciudad varchar(20) not null, nocliente int(10) primary key not null, limitecredito int(10) not null, descuento varchar(5) not null, saldo int(10) not null, idempresa varchar(10) not null);
Ejercicio 5
>create database ejercicio5;
>use ejercicio5;
>create table proveedor(RUT varchar(15) primary key not null, paginaweb varchar(30) not null,calle varchar(15) not null, nocalle int(6) not null, comuna varchar(15) not null, ciudad varchar(20) not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null);
>create table telefonoproveedor(RUT varchar(15) not null, telefono varchar(15) not null);
>create table producto(idproducto varchar(10) primary key not null, nombre varchar(15) not null, precio int(10) not null, stock int(10) not null, RUT varchar(15) not null, idcategoria varchar(10) not null, idventa varchar(10) not null);
>create table categoria(nombre varchar(15) not null, idcategoria varchar(10) primary key not null, descripcion varchar(1000) not null);
>create table venta(idventa varchar(10) primary key not null, RUT varchar(15) not null, fecha DATE not null, descuento int(3) not null, precio int(10) not null, cantidad int(10) not null, total int(10) not null);
>create table cliente(RUT varchar(15) primary key not null, calle varchar(15) not null, nocalle int(6) not null, comuna varchar(5) not null, ciudad varchar(20) not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null);
>create table telefonocliente(RUT varchar(15) not null, telefono varchar(15) not null);
Ejercicio 6
>create database ejercicio6;
>use ejercicio6;
>create table aeropuerto(codigo varchar(10) primary key not null, nombre varchar(40) not null, pais varchar(20) not null, ciudad varchar(20) not null);
>create table avion(idavion varchar(10) primary key not null, capacidad int(10) not null, modelo varchar(15) not null, novuelo varchar(10) not null);
>create table vuelo(novuelo varchar(10) primary key not null, fecha DATE not null, plazasvacias int(4) not null);
>create table programadevuelo(novuelo varchar(10) primary key not null, lineaarea varchar(15) not null, diasemana varchar(9) not null, escala varchar(2) not null, noescalas int(2) not null);
>create table despegaaterriza(novuelo varchar(10) not null, codigo varchar(10) not null);
>create table tomatierra(codigo varchar(10) not null, idavion varchar(10) not null);
Ejercicio 7
>create database ejercicio7;
>use ejercicio7;
>create table olimpiada(ano int(4) primary key not null);
>create table sede(ano int(4) not null, idsede varchar(10) primary key not null);
>create table evento(fecha DATE not null, duracion varchar(15) not null, noparticipantes int(5) not null, localizacion varchar(30) not null, idevento varchar(10) primary key not null);
>create table equipamiento(idequipamiento varchar(10) primary key not null);
>create table comisario(idcomisario varchar(10) primary key not null);
>create table complejo(areatotal int(6) not null, localizacion varchar(30) primary key not null, jefe varchar(20) not null, idsede varchar(10) not null);
>create table area(deporte varchar(20) not null, localizacion varchar(30) primary key not null);
>create table tiene(idevento varchar(10) not null, idcomisario varchar(10) primary key not null, tarea varchar(20) not null);
>create table necesita(idequipamiento varchar(10) not null, idevento varchar(10) primary key not null);
Ejercicio 8
>create database ejercicio8;
>use ejercicio8;
>create table entrenador(identrenador varchar(10) primary key not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null);
>create table jugador(idjugador varchar(10) primary key not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null, premio varchar(15) not null);
>create table partido(idpartido varchar(10) primary key not null, modalidad varchar(20) not null, relevancia varchar(15) not null, marcador varchar(6) not null, fecha DATE not null, premio varchar(15) not null, premioconsolacion varchar(15) not null);
>create table arbitro(nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null, idarbitro varchar(10) primary key not null);
>create table torneo(idtorneo varchar(10) primary key not null, ciudad varchar(20) not null, pais varchar(20) not null);
>create table entrena(identrenador varchar(10) not null, idjugador varchar(10) primary key not null);
Ejercicio 9
>create database ejercicio9;
>use ejercicio9;
>create table cine(nombrecine varchar(15) primary key not null, calle varchar(15) not null, nocalle int(6) not null, colonia varchar(15) not null, ciudad varchar(20) not null);
>create table telefonocine(nombrecine varchar(15) not null, telefono varchar(15) not null);
>create table promocion(descripcion varchar(250) primary key not null, descuento varchar (6) not null);
>create table sala(idsala varchar(10) primary key not null, nombre varchar(15) not null, butacas int(5) not null, nombrecine varchar(15) not null, idfuncion varchar(10) not null);
>create table funcion(idfuncion varchar(10) primary key not null, dia DATE not null, hora varchar(10) not null, nombre varchar(30) not null, idcartelera varchar(10) not null, idsala varchar(10) not null);
>create table opinion(idopinion varchar(10) primary key not null, comentario varchar(1000) not null, fecha DATE not null, calificacion varchar(15) not null, edad int(3) not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null);
>create table pelicula(nombre varchar(30) primary key not null, idficha varchar(10) not null, idfuncion varchar(10) not null);
>create table ficha(idficha varchar(10) primary key not null, titulodistribucion varchar(30) not null, sitioweb varchar(30) not null, genero varchar(15) not null, subtitulos varchar(2) not null, titulooriginal varchar(30) not null, duracion varchar(7) not null, idioma varchar(15) not null, pais varchar(15) not null, estreno DATE not null, ano int(4) not null, calificacion varchar(15) not null, resumen varchar(1000) not null, nombre varchar(30) not null);
>create table actor(nacionalidad varchar(15) not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null, idactor varchar(10) primary key not null);
>create table director(nacionalidad varchar(15) not null, nombre varchar(15) not null, apellidopaterno varchar(15) not null, apellidomaterno varchar(15) not null, iddirector varchar(10) primary key not null);
>create table cartelera(idcartelera varchar(10) primary key not null, nombrecine varchar(15) not null);
>create table participa(nombre varchar(30) primary key not null, idactor varchar(10) not null, iddirector varchar(10) not null);
>create table presenta(nombre varchar(30) not null, nombrecine varchar(15) not null);
>create table tiene(nombrecine varchar(15) not null, descripcion varchar(1000) not null);
Ejercicio 10
>create database ejercicio10;
>use ejercicio10;
>create table pieza(id varchar(10) primary key not null, nombre varchar(15) not null);
>create table mueble(nombre varchar(15) primary key not null, precio int(10) not null, nopiezas int(4) not null);
>create table estante(posicion varchar(10) primary key not null, pasillo varchar(5) not null, altura int(3) not null);
>create table esta(posicion varchar(10) primary key not null, nombre varchar(15) not null);
Conclusiones
El lenguaje SQL es necesario para trabajar con bases de datos relacionales así que su manejo es muy importante para poder llevar a cabo un sistema útil y completo, que cumpla con todas las funcionalidades y especificaciones que queramos. Como se ve arriba, no es un lenguaje complicado, todo lo contrario, es extremedamente simple, y por esto mismo, es susceptible a errores; para cuidarnos de estos errores es que usamos en la entrada pasada de este blog las formas normales.



















No hay comentarios.:
Publicar un comentario