Está en la página 1de 13

DESARROLLADO POR: Brandon Yesid Sanchez Muñoz

FICHA: 2061871
PROGRAMA: Programación de Software

EJERCICIOS PROPUESTOS

Ejercicio 1:

• Teniendo en cuenta el siguiente modelo, c ree la base de datos que se llame Ejercito, Muestre la base de
datos creada, luego cree las tablas correspondientes (Soldado, Compañía y Dotación) con sus respectivos
campos. Tenga en cuenta seleccionar tipos de datos, tamaños , primary key.

• Borre (Drop) la tabla Compañía


• Edite (Alter table) la tabla Soldado agregando el campo Armamento
Ejercicio 2:

Teniendo en cuenta el siguiente Modelo Conceptual (MER), realice el Modelo Lógico MR, luego cree la base de
datos que se llame Sena y a su vez cree las tablas según corresponda :

• Cambie el nombre de la tabla Aprendiz por Estudiante (Rename).


• Edite la tabla profesor agregando el campo Dirección ( Alter table).
• Borre el campo Teléfono de la tabla instructor (Drop colum).

3. Teniendo en cuenta que el siguiente modelo presenta algunos errores, corrija el modelo utilizando la
herramienta DIA y utilizando el Sistema gestor de bases de datos MySQL ó SQL Server, cree la base de datos que
se llame Ventas y dentro de ellas cree las tablas .

Luego realice los siguientes ejercicios:

1. Realizar una modificación a la tabla Productos agregando el campo ValorComprado tipo doble.

2. Reiniciar la tabla Clientes


3. Borrar el campo Descuento_Venta de la tabla Ventas

4. Agregar el campo Cantidad_Producto de tipo entero de la tabla Productos_Ventas

5. Modifique el campo Edad_Cliente de tipo entero cambiándolo por Fecha_Nacimiento_Cliente de tipo Fecha
en la tabla Clientes.

Después de realizar los tres ejercicios anteriores, consigne el código de cada uno de ellos en cada uno de los
espacios correspondientes.

Ejercicio 1: Código de la base de datos Ejercito


Setting environment for using XAMPP for Windows.

Administrador@ENRIQUE c:\xampp

# mysql -u root

Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 92

Server version: 10.1.38-MariaDB mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database ejercito;

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> show databases;

+----------------------+

| Database |

+----------------------+

| appmaestro |

| appmaestro_php |

| ejercito |

| equipos_colombianos |
| information_schema |

| mysql |

| performance_schema |

| phpmyadmin |

| repartidora_paquetes |

| test |

+----------------------+

10 rows in set (0.00 sec)

MariaDB [(none)]> use ejercito;

Database changed

MariaDB [ejercito]> create table soldado(sol_codigo int NOT NULL PRIMARY KEY
AUTO_INCREMENT,sol_nombre varchar(30),sol_apellido varchar(30),sol_edad int);

Query OK, 0 rows affected (0.21 sec)

MariaDB [ejercito]> create table compania(com_codigo int NOT NULL PRIMARY KEY
AUTO_INCREMENT,com_nombre varchar(50),com_cantidad_soldados int);

Query OK, 0 rows affected (0.32 sec)

MariaDB [ejercito]> create table dotacion(dot_codigo_articulo int NOT NULL PRIMARY KEY
AUTO_INCREMENT,dot_nombre_articulo varchar(30),dot_cantidad_articulos int);

Query OK, 0 rows affected (0.21 sec)

MariaDB [ejercito]> describe soldado;

+--------------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+--------------+-------------+------+-----+---------+----------------+

| sol_codigo | int(11) | NO | PRI | NULL | auto_increment |

| sol_nombre | varchar(30) | YES | | NULL | |

| sol_apellido | varchar(30) | YES | | NULL | |

| sol_edad | int(11) | YES | | NULL | |


+--------------+-------------+------+-----+---------+----------------+

4 rows in set (0.03 sec)

MariaDB [ejercito]> describe compania;

+-----------------------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+-----------------------+-------------+------+-----+---------+----------------+

| com_codigo | int(11) | NO | PRI | NULL | auto_increment |

| com_nombre | varchar(50) | YES | | NULL | |

| com_cantidad_soldados | int(11) | YES | | NULL | | +----------------

-------+-------------+------+-----+---------+----------------+

3 rows in set (0.03 sec)

MariaDB [ejercito]> describe dotacion;

+------------------------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+------------------------+-------------+------+-----+---------+----------------+

| dot_codigo_articulo | int(11) | NO | PRI | NULL | auto_increment |

| dot_nombre_articulo | varchar(30) | YES | | NULL | |

| dot_cantidad_articulos | int(11) | YES | | NULL | | +---------------

---------+-------------+------+-----+---------+----------------+

3 rows in set (0.03 sec)

MariaDB [ejercito]> drop table compania;

Query OK, 0 rows affected (0.14 sec)

MariaDB [ejercito]> show tables;

+--------------------+

| Tables_in_ejercito |

+--------------------+
| dotacion |

| soldado |

+--------------------+

2 rows in set (0.00 sec)

MariaDB [ejercito]> alter table soldado add column sol_armamento varchar(50);

Query OK, 0 rows affected (0.51 sec)

Records: 0 Duplicates: 0 Warnings: 0

MariaDB [ejercito]> describe soldado;

+---------------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+---------------+-------------+------+-----+---------+----------------+

| sol_codigo | int(11) | NO | PRI | NULL | auto_increment |

| sol_nombre | varchar(30) | YES | | NULL | |

| sol_apellido | varchar(30) | YES | | NULL | |

| sol_edad | int(11) | YES | | NULL | |

| sol_armamento | varchar(50) | YES | | NULL | |

+---------------+-------------+------+-----+---------+----------------+

5 rows in set (0.01 sec)

MariaDB [ejercito]>
Ejercicio2: Código de la base de datos SENA

Setting environment for using XAMPP for Windows.

Administrador@ENRIQUE c:\xampp

# mysql -u root

Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 61

Server version: 10.1.38-MariaDB mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database sena;

Query OK, 1 row affected (0.01 sec)

MariaDB [(none)]> show databases;

+----------------------+

| Database |

+----------------------+

| appmaestro |

| appmaestro_php |

| ejercito |

| equipos_colombianos |

| information_schema |

| mysql |

| performance_schema |

| phpmyadmin |
| repartidora_paquetes |

| sena |

| test |

+----------------------+

11 rows in set (0.00 sec)

MariaDB [(none)]> use sena;

Database changed

MariaDB [sena]> create table instructor(ins_codigo int NOT NULL PRIMARY KEY
AUTO_INCREMENT,ins_nombre varchar(30),ins_apellido varchar(30),ins_telefono int);

Query OK, 0 rows affected (0.39 sec)

MariaDB [sena]> create table aprendiz(apr_codigo int NOT NULL PRIMARY KEY
AUTO_INCREMENT,apr_nombre varchar(30),apr_apellido varchar(30),apr_programa_formacion varchar

(50));

Query OK, 0 rows affected (0.22 sec)

MariaDB [sena]> show tables;

+----------------+

| Tables_in_sena |

+----------------+

| aprendiz |

| instructor |

+----------------+

2 rows in set (0.00 sec)

MariaDB [sena]> describe aprendiz;

+------------------------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+------------------------+-------------+------+-----+---------+----------------+
| apr_codigo | int(11) | NO | PRI | NULL | auto_increment |

| apr_nombre | varchar(30) | YES | | NULL | |

| apr_apellido | varchar(30) | YES | | NULL | |

| apr_programa_formacion | varchar(50) | YES | | NULL | |

+------------------------+-------------+------+-----+---------+----------------+

4 rows in set (0.03 sec)

MariaDB [sena]> describe instructor;

+--------------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+--------------+-------------+------+-----+---------+----------------+

| ins_codigo | int(11) | NO | PRI | NULL | auto_increment |

| ins_nombre | varchar(30) | YES | | NULL | |

| ins_apellido | varchar(30) | YES | | NULL | |

| ins_telefono | int(11) | YES | | NULL | |

+--------------+-------------+------+-----+---------+----------------+

4 rows in set (0.07 sec)

MariaDB [sena]> alter table aprendiz rename estudiante;

Query OK, 0 rows affected (0.21 sec)

MariaDB [sena]> show tables;

+----------------+

| Tables_in_sena |

+----------------+

| estudiante |

| instructor |

+----------------+

2 rows in set (0.00 sec)


MariaDB [sena]> alter table instructor add column ins_direccion varchar(50);

Query OK, 0 rows affected (0.55 sec)

Records: 0 Duplicates: 0 Warnings: 0

MariaDB [sena]> describe instructor;

+---------------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+---------------+-------------+------+-----+---------+----------------+

| ins_codigo | int(11) | NO | PRI | NULL | auto_increment |

| ins_nombre | varchar(30) | YES | | NULL | |

| ins_apellido | varchar(30) | YES | | NULL | |

| ins_telefono | int(11) | YES | | NULL | |

| ins_direccion | varchar(50) | YES | | NULL | |

+---------------+-------------+------+-----+---------+----------------+

5 rows in set (0.04 sec)

MariaDB [sena]> alter table instructor drop column ins_telefono;

Query OK, 0 rows affected (0.34 sec)

Records: 0 Duplicates: 0 Warnings: 0

MariaDB [sena]> describe instructor;

+---------------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+---------------+-------------+------+-----+---------+----------------+

| ins_codigo | int(11) | NO | PRI | NULL | auto_increment |

| ins_nombre | varchar(30) | YES | | NULL | |

| ins_apellido | varchar(30) | YES | | NULL | |

| ins_direccion | varchar(50) | YES | | NULL | |


+---------------+-------------+------+-----+---------+----------------+

4 rows in set (0.03 sec)

MariaDB [sena]>

Ejercicio 3: Código de la base de datos Ventas

CREATE TABLE `ventas`.`productos` (

`pro_codigo` INT NOT NULL AUTO_INCREMENT,

`pro_nombre` VARCHAR(30) NOT NULL,

`pro_valor` FLOAT NOT NULL,

`pro_cantidad` INT NOT NULL,

PRIMARY KEY (`pro_codigo`));

CREATE TABLE `ventas`.`cliente` (

`cli_id` int(11) NOT NULL AUTO_INCREMENT,

`cli_nombre` varchar(30) DEFAULT NULL,

`cli_apellido` varchar(30) DEFAULT NULL,

`fecha_nacimiento_cliente` date DEFAULT NULL,

`cli_telefono` int(11) DEFAULT NULL,

`cli_direccion` varchar(50) DEFAULT NULL,

PRIMARY KEY (`cli_id`));

CREATE TABLE `ventas`.`ventas` (

`ven_codigo` int(11) NOT NULL AUTO_INCREMENT,

`ven_fecha` date NOT NULL,

`ven_valort` float NOT NULL,

`ven_valorp_usuario` float NOT NULL,

`ven_descuento` float DEFAULT NULL,

`ven_iva` float NOT NULL,


`ven_devolucion` float DEFAULT NULL,

`cli_id` int(11) NOT NULL,

PRIMARY KEY (`ven_codigo`),

CONSTRAINT `fk_cli_id` FOREIGN KEY (`ven_codigo`) REFERENCES `cliente` (`cli_id`) ON DELETE


CASCADE ON UPDATE CASCADE);

CREATE TABLE `ventas`.`productos_ventas` (

`pro_ven_codigo` int(11) NOT NULL AUTO_INCREMENT,

`pro_codigo` int(11) NOT NULL,

`ven_codigo` int(11) NOT NULL,

`cantidad_producto` int(11) NOT NULL,

PRIMARY KEY (`pro_ven_codigo`),

CONSTRAINT `fk_pro_ven` FOREIGN KEY (`pro_ven_codigo`) REFERENCES `productos` (`pro_codigo`)


ON DELETE CASCADE ON UPDATE CASCADE,

CONSTRAINT `fk_pro_ven_ven` FOREIGN KEY (`pro_ven_codigo`) REFERENCES `ventas` (`ven_codigo`)


ON DELETE CASCADE ON UPDATE CASCADE);

También podría gustarte