0% encontró este documento útil (0 votos)
309 vistas9 páginas

Guía SQL para Tienda de Informática

1) El documento describe cómo crear una base de datos llamada "TIENDA" y tablas relacionadas para almacenar información sobre fabricantes, artículos y ventas. 2) Se especifican comandos SQL para crear las tablas, agregar datos de ejemplo, y realizar consultas que recuperan y ordenan los datos. 3) El documento también muestra cómo actualizar y eliminar datos de las tablas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
309 vistas9 páginas

Guía SQL para Tienda de Informática

1) El documento describe cómo crear una base de datos llamada "TIENDA" y tablas relacionadas para almacenar información sobre fabricantes, artículos y ventas. 2) Se especifican comandos SQL para crear las tablas, agregar datos de ejemplo, y realizar consultas que recuperan y ordenan los datos. 3) El documento también muestra cómo actualizar y eliminar datos de las tablas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

“ LA TIENDA DE INFORMATICA”

INSTRUCCIONES: En el siguiente ejercicio se describen cada uno de los comandos para llevar a cabo cada una de las
consultas solicitadas, ejecuta cada uno de ellos en el compilador de MySQL.

ACTIVIDADES A REALIZAR

1. Crea una base de datos llamada TIENDA


CREATE DATABASE TIENDA;

2. Muestra las Bases de datos almacenadas

SHOW DATABASES;

3. Habilita la Base de datos TIENDA


USE TIENDA;

4. Genera las siguientes tablas:

FABRICANTES CREATE TABLE FABRICANTES (Clave_fabricante


NOMBRE DE COLUMNA TIPO DE DATO INT NOT NULL, Nombre VARCHAR(30), PRIMARY
Clave Principal Clave_fabricante Int
KEY (Clave_fabricante));
Nombre Varchar(30)

ARTICULOS CREATE TABLE ARTICULOS (Clave_articulo INT NOT


NOMBRE DE COLUMNA TIPO DE DATO NULL, Nombre VARCHAR(30), Precio INT,
Clave Principal Clave_articulo Int Clave_fabricante INT, PRIMARY KEY (Clave_articulo),
Nombre Varchar(30) FOREING KEY(Clave_fabricante) REFERENCES
Precio Int FABRICANTES (Clave_fabricante));
Clave Foránea Clave_fabricante Int

5. Muestra las tablas de la Base de datos TIENDA

SHOW TABLES;

6. Muestra los atributos de la tabla ARTICULOS;

DESCRIBE ARTICULOS;

7. Introduce los siguientes datos en cada tabla:

TABLA: FABRICANTES
CLAVE_FABRICANTE NOMBRE
1 Kingston
2 Adata
3 Logitech
4 Lexar
5 Seagate

INSERT INTO FABRICANTES VALUES ( 1 , ‘Kingston’);


TABLA: ARTICULOS
CLAVE_ARTICULO NOMBRE PRECIO CLAVE_FABRICANTE
1 Teclado $ 100 3
2 Disco duro 300 Gb $ 500 5
3 Mouse $ 80 3
4 Memoria USB $ 140 4
5 Memoria RAM $ 290 1
6 Disco duro extraíble 250 Gb $ 650 5
7 Memoria USB $ 279 1
8 DVD Rom $ 450 2
9 CD Rom $ 200 2
10 Tarjeta de red $ 180 3

INSERT INTO ARTICULOS VALUES ( 1 , ‘Teclado’, 100 , 3 );

8. Genera las siguientes consultas:

a) Obtener todos los datos de los productos de la tienda

SELECT * FROM ARTICULOS;

b) Obtener los nombres de los productos de la tienda

SELECT Nombre FROM ARTICULOS;

c) Obtener los nombres y precio de los productos de la tienda

SELECT Nombre,Precio FROM ARTICULOS;

d) Obtener los nombres de los artículos sin repeticiones

SELECT DISTINCT Nombre FROM ARTICULOS;

e) Obtener todos los datos del artículo cuya clave de producto es ‘5’

SELECT * FROM ARTICULOS WHERE Clave_articulo=5;

f) Obtener todos los datos del artículo cuyo nombre del producto es ‘’Teclado”

SELECT * FROM ARTICULOS WHERE Nombre=’Teclado’;

g) Obtener todos los datos de la Memoria RAM y memorias USB

SELECT * FROM ARTICULOS WHERE Nombre=’Memoria RAM’ OR Nombre=’Memoria USB’ ;

h) Obtener todos los datos de los artículos que empiezan con ‘M’

SELECT * FROM ARTICULOS WHERE Nombre LIKE ‘M%’;


i) Obtener el nombre de los productos donde el precio sea $ 100

SELECT Nombre FROM ARTICULOS WHERE Precio = 100;

j) Obtener el nombre de los productos donde el precio sea mayor a $ 200

SELECT Nombre FROM ARTICULOS WHERE Precio > 200;

k) Obtener todos los datos de los artículos cuyo precio este entre $100 y $350

/* OPERADOR AND */

SELECT * FROM ARTICULOS WHERE Precio >= 100 AND Precio<=350;

/* OPERADOR BETWEEN */

SELECT * FROM ARTICULOS WHERE Precio BETWEEN 100 AND 350;

l) Obtener el precio medio de todos los productos

SELECT AVG(Precio) FROM ARTICULOS;

m) Obtener el precio medio de los artículos cuyo código de fabricante sea 2

SELECT AVG(Precio) FROM ARTICULOS WHERE Clave_fabricante=3;

n) Obtener el nombre y precio de los artículos ordenados por Nombre

SELECT Nombre, Precio FROM ARTICULOS ORDER BY Nombre;

o) Obtener todos los datos de los productos ordenados descendentemente por Precio

SELECT * FROM ARTICULOS ORDER BY Precio DESC;

p) Obtener el nombre y precio de los artículos cuyo precio sea mayor a $ 250 y ordenarlos descendentemente por precio
y luego ascendentemente por nombre

SELECT Nombre, Precio FROM ARTICULOS


WHERE Precio >= 250 ORDER BY Precio DESC, Nombre;

q) Obtener un listado completo de los productos, incluyendo por cada articulo los datos del articulo y del fabricante

SELECT * FROM ARTICULOS, FABRICANTES


WHERE ARTICULOS.Clave_fabricante=FABRICANTES.Clave_fabricante
r) Obtener la clave de producto, nombre del producto y nombre del fabricante de todos los productos en venta

SELECT ARTICULOS.Clave_articulo, [Link], [Link]


FROM ARTICULOS, FABRICANTES
WHERE ARTICULOS.Clave_fabricante=FABRICANTES.Clave_fabricante

s) Obtener el nombre y precio de los artículos donde el fabricante sea Logitech ordenarlos alfabéticamente por nombre
del producto
SELECT [Link], [Link] FROM ARTICULOS, FABRICANTES
WHERE [Link]=’Logitech’ AND
ARTICULOS.Clave_fabricante=FABRICANTES.Clave_fabricante
ORDER BY [Link];

t) Obtener el nombre, precio y nombre de fabricante de los productos que son marca Lexar o Kingston ordenados
descendentemente por precio

SELECT [Link], [Link], [Link]


FROM ARTICULOS, FABRICANTES
WHERE [Link]=’Lexar’ OR [Link]=’Kingston’
AND ARTICULOS.Clave_fabricante=FABRICANTES.Clave_fabricante
ORDER BY [Link] DESC;

u) Añade un nuevo producto: Clave del producto 11, Altavoces de $ 120 del fabricante 2

INSERT INTO ARTICULOS VALUES (11 ,’Altavoces’, 120, 2);

v) Cambia el nombre del producto 6 a ‘Impresora Laser’

UPDATE ARTICULOS SET Nombre=’Impresora Laser’


WHERE Clave_articulo = 8

w) Aplicar un descuento del 10% a todos los productos.

UPDATE ARTICULOS SET Precio=Precio *0.10

x) Aplicar un descuento de $ 10 a todos los productos cuyo precio sea mayor o igual a $ 300

UPDATE ARTICULOS SET Precio=Precio – 10


WHERE Precio >= 300

y) Borra el producto numero 6

DELETE FROM ARTICULOS WHERE Clave_articulo= 6


¿Cómo Agregar Llave Primaria Y Foranea En Mis Tablas?
Ya cree mis tablas que quiero ¿y ahora có mo las relaciono? En SQLServer
se puede realizar mediante dos formas: En có digo SQL o utilizando las
herramientas del gestor.
Para esta clase utilizaremos el SQLServer 2012 mediante có digo SQL,
para ello crearemos unas tablas de ejemplo:
Creando la tabla Clientes:?
1 CREATE TABLE CLIENTES
2 ( id_Cliente char(8) primary key,
3 NombreCliente varchar(max)
4 );
¿Por qué "max"? Quiero decir que la columna "NombreCliente" no tendrá límite de caracteres (bueno no
tanto así), a diferencia de "id_Cliente" que sí tiene un límite 8 caracteres, es decir "NombreCliente" puede
llegar hasta el má ximo que soporta un "varchar" que segú n Microsoft en SQLServer 2012, indica que el
tamañ o má ximo de almacenamiento es de 2GB. 
Creando la tabla Productos:
?
1 CREATE TABLE PRODUCTOS
2 ( id_Producto char(8) primary key,
3 Rubro varchar(20),
4 Tipo varchar(20),
5 NombreProducto varchar(max)
6 );
Creando la tabla Fechas:
?
1 CREATE TABLE FECHAS
2 ( id_Fecha char(8) primary key,
3 Anio varchar(5),
4 Trimestre nvarchar(20),
5 Mes int,
6 Dia int
7 );
Creando la tabla Ventas:
?
1 CREATE TABLE VENTAS
2 ( id_Cliente char(8) not null,
3 id_Producto char(8) not null,
4 id_Fecha char(8) not null,
5 importeTotal float,
6 Utilidad float,
7 CONSTRAINT fk_Cliente FOREIGN KEY (id_Cliente) REFERENCES CLIENTES (id_Cliente),
8 CONSTRAINT fk_Producto FOREIGN KEY (id_Producto) REFERENCES PRODUCTOS (id_Producto),
9 CONSTRAINT fk_Cliente FOREIGN KEY (id_Fecha) REFERENCES FECHAS (id_Fecha)
10 );
Por lo tanto se tienen que indicar que campo será la llave forá nea y a qué tabla se referencia mencionando
también el campo, que en la tabla referenciada es llave primaria.
Hasta ahí todo muy bien ¿verdad? Pero ahora, tal vez, te estará s preguntando ¿có mo agrego una llave
forá nea a una tabla que ya he creado? Simplemente tendrías que ejecutar lo siguiente, utilizando de ejemplo
la tabla Ventas:

1 ALTER TABLE VENTAS


2 ADD FOREIGN KEY (id_Cliente) REFERENCES CLIENTES(id_Cliente);

PROGRAMACION III 3er Periodo 2017


TEMA: consultas SQL SERVER
Elabore cada una de las bases de datos con las siguientes características. Guardar las consultas

Elabore 10 consultas (sentencias simples, funciones, join, subconsultas) de cada una de las tablas y
guarde el archivo

Actividad Exposiciones
Programación 3
Contenidos

Equipo #1 ___________________________________________________________
- Vistas
- Subconsultas SQL
- Disparadores (Triggers)
- Procedimientos Almacenados
- Demostración (Preparar ejercio practico para clase)

Equipo #2 ___________________________________________________________
- Introducción a C# (Tipo de datos, definición de variables, generalidades)
- Creación de programas en el lenguaje.(Explicar un pequeño sistema en C# )

Equipo #3 ___________________________________________________________
- Introducción [Link] (generalidades de ASP)
- conexión de [Link] a SQL.
- desarrollo de aplicación en [Link].( Explicar un pequeño sistema)

Equipo# 4 ___________________________________________________________
- Introducción
- Cristal Report.
- Demostracion de 2 o mas reportes desde un pequeño sistema

Alumno Dominio Expresión Contenido Demostracio total


tema / n
Recursos
Problema 1 (*): Artículos y encargos Una base de datos para una pequeña empresa debe contener
información acerca de clientes, artículos y pedidos. Hasta el momento se registran los siguientes
datos en documentos varios: • Para cada cliente: Número de cliente (único), Direcciones de envío
(varias por cliente), Saldo, Límite de crédito (depende del cliente, pero en ningún caso debe
superar los 3.000.000 pts), Descuento. • Para cada artículo: Número de artículo (único), Fábricas
que lo distribuyen, Existencias de ese artículo en cada fábrica, Descripción del artículo. • Para
cada pedido: Cada pedido tiene una cabecera y el cuerpo del pedido. La cabecera está formada por
el número de cliente, dirección de envío y fecha del pedido. El cuerpo del pedido son varias
líneas, en cada línea se especifican el número del artículo pedido y la cantidad. Además, se ha
determinado que se debe almacenar la información de las fábricas. Sin embargo, dado el uso de
distribuidores, se usará: Número de la fábrica (único) y Teléfono de contacto. Y se desean ver
cuántos artículos (en total) provee la fábrica. También, por información estratégica, se podría
incluir información de fábricas alternativas respecto de las que ya fabrican artículos para esta
empresa. Nota: Una dirección se entenderá como Nº, Calle, Comuna y Ciudad. Una fecha incluye
hora. Se pide hacer el diagrama ER para la base de datos que represente esta información.

Problema 2 (*): Sistema de ventas Le contratan para hacer una BD que permita apoyar la gestión
de un sistema de ventas. La empresa necesita llevar un control de proveedores, clientes, productos
y ventas. Un proveedor tiene un RUT, nombre, dirección, teléfono y página web. Un cliente
también tiene RUT, nombre, dirección, pero puede tener varios teléfonos de contacto. La
dirección se entiende por calle, número, comuna y ciudad. Un producto tiene un id único, nombre,
precio actual, stock y nombre del proveedor. Además se organizan en categorías, y cada producto
va sólo en una categoría. Una categoría tiene id, nombre y descripción. Por razones de
contabilidad, se debe registrar la información de cada venta con un id, fecha, cliente, descuento y
monto final. Además se debe guardar el precio al momento de la venta, la cantidad vendida y el
monto total por el producto.

También podría gustarte