BUENOS DIAS
BUSCAR EN SUS CUENTAS DE CORREO ELECTRONICO DOS PRACTICAS QUE LES ENVIE.
FAVOR ENVIAR PRACTICA A SUS COMPANEROS EN CASO DE QUE NO LES LLEGASE, A SUS DESTINOS
SALUDOS
Gestion y Consulta de Datos con SQL
Bienvenidos
Objetivos Generales: Con este Material de Microsoft SQL Server Gota a Gota en las Bases de Datos Relacionales pretendo dejar claro los conceptos de su funcionamiento y estructura, consiguiendo los siguientes objetivos:
Aclarar el funcionamiento en todos los aspectos de las Bases de datos relacionales y la Gestión de las mismas
Comprender los lenguajes que conforman las Bases de Datos (DDL, DML, DCL)
Objetivos Específicos: Especificando un poco más los objetivos de este material, podemos declarar que el alumno conseguirá entender el funcionamiento y estructura para saber como aprovechar todas las capacidades de este tipo de bases de datos en la creación de programas informáticos de cualquier nivel aprender la utilización de las bases de datos de SQL SERVER de cara a la programación.
Estudiar el funcionamiento de las mismas, para una mejor base de cara a la utilización de sentencias SQL y de bases de datos de mayor complejidad.
Aclarar el funcionamiento en todos los aspectos de las Bases de datos relacionales y la Gestión de las mismas
Comprender los lenguajes que conforman las Bases de Datos (DDL, DML, DCL)
Objetivos Específicos: Especificando un poco más los objetivos de este material, podemos declarar que el alumno conseguirá entender el funcionamiento y estructura para saber como aprovechar todas las capacidades de este tipo de bases de datos en la creación de programas informáticos de cualquier nivel aprender la utilización de las bases de datos de SQL SERVER de cara a la programación.
Estudiar el funcionamiento de las mismas, para una mejor base de cara a la utilización de sentencias SQL y de bases de datos de mayor complejidad.
domingo, 28 de abril de 2013
sábado, 20 de abril de 2013
USO ALTER TABLE
--agregar columnaalter table estudiante_t
add correo varchar(10)
--modificar una columna
alter table estudiante_t
alter column correo varchar(100)
--renombrar una columna
exec sp_rename 'estudiante_t.correo','correo_elect'
, 'column'
--sp_helpindex estudiante_t
--quitar constraint
alter table estudiante_t
drop constraint PK_ESTUDIANTE_MATRICULA
--habilitar
alter table estudiante_t
add constraint PK_ESTUDIANTE_MATRICULA
primary key(matricula)
--BORRAR FORANEA
alter table estudiante_t
drop constraint FK__ESTUDIANT__IDCUR__1B0907CE
--HABILITAR FORANEA
alter table estudiante_t
add constraint FK_ESTUDIANTE_CURSO
FOREIGN key(IDCURSO)
REFERENCES CURSITO_T (IDCURSO)
--renombrar una tabla
sp_rename 'curso_t', 'cursito_t'
PRACTICA AULA MEGACENTRO GRUPO MANANA

UNIVERSIDAD
DOMINICANA O&M
Modulo Gestión y Consulta de Datos
Practica Aula Megacentro
Profesor: Lic. Elvin German
Una biblioteca
quiere diseñar una BD de la información que maneja. Para ello decide crear una
base de datos BDBIBLIOTECA. En esta base de datos se decide crear una tabla
LIBROS con la información relativa a cada uno de los libros de que se dispone y
otra tabla PRESTAMOS donde quedará registrada la información relativa a
cada uno de los préstamos que se realice.
La descripción de
las tablas es la siguiente:
TOTAL_EJEMPLARES indica el número de
ejemplares de que se dispone de ese libro y TOTAL_PRESTAMO indica el número de ejemplares
que está en préstamo es ese momento.
![]() |
FECHA_DEVOLUCION
indica la fecha en la que se ha devuelto
el libro. Los libros que tienen el valor NULL en la columna Fecha_devoluación
son aquellos que en este momento están en préstamo
Se pide realizar las sentencias Sql que correspondan a los siguientes Enunciados:
1 – Comprobar la versión de SQL con la
que está trabajando.
2 – a) Crear una base de datos BDBIBLIOTECA
3 – a) Crear las tablas con las
siguientes restricciones:
LIBROS
·
CODIGO Clave
primaria
·
TITULO No
nulo
·
AUTOR No
nulo
·
TITULO y AUTOR Único
PRESTAMOS
·
NUMERO Clave
primaria
·
ID_LIBRO Clave ajena referenciando a CODIGO de la tabla
LIBROS con el
nombre FK_LIBROS.
No nulo
·
NIF No
nulo
·
FECHA_PRETAMO No nulo
4 – a) Insertar las filas para que el
contenido de las tablas sea:
TABLA LIBROS
Codigo Título Autor Total_ejemplares Total_prestamo
ABS/1234 LA COLMENA CAMILO
JOSE CELA 5 2
BBC/3456 NIEBLA MIGUEL
DE UNAMUNO 7 1
BCD/1111 EL QUIJOTE MIGUEL
DE CERVANTES 10
1
BDF/2255 LA VIDA ES SUEÑO CALDERON DE LA BARCA 5 0
Total_ejemplares indica el número de
ejemplares del mismo libro que hay en la biblioteca y Total_prestamo el número
de ejemplares que en este momento están prestados
TABLA PRÉSTAMOS
Numero Id_libro NIF
Fecha_Prestamo Fecha_devolucion
1 ABS/1234 123456-L 12/10/2011 12/11/2011
2 BBC/3456 444444-M 12/10/2011 12/11/2011
3 BCD/1111 123123-Y 15/02/2010 10/03/2011
4 ABS/1234 334455-B 10/03/2011 NULL
5 BCD/1111 555555-N 20/03/2011 NULL
6 BBC/3456 212121-A 20/04/2011 NULL
7 ABS/1234 870000-N 29/03/2011
NULL
- b) Comprobar que
se han insertado las filas
5 –
Realizar
una consulta que muestre los títulos de los libros que tienen más de una
palabra (el título tiene el carácter blanco)
6 - Realizar una consulta que muestre el titulo y
el autor de aquellos libros en los que el préstamo está vencido (los libros
pueden estar en préstamo como máximo 30 días);
7 - Realizar una consulta que muestre el número de préstamos que se ha
realizado de cada libro, incluyendo los que están ahora mismo en préstamo.
Mostrará los datos:
CODIGO TITULO AUTOR NUM_PRESTAMOS
8 - Crear una vista PEDIR _ PRÉSTAMO
que muestre todos los libros de los que hay algún ejemplar para prestar en este
momento. Se visualizará la información: titulo, autor y número de ejemplares
para prestar.
9 - Realizar la inserción de nuevo
préstamo
a)
insertar los datos:
Numero Id_libro NIF Fecha_Prestamo
Fecha_devolucion
8 BBC/3456 123499-L La fecha de hoy NULL
b) modificar la tabla
libros incrementando en uno el número de ejemplares prestados.
10 – Se decide que a partir del próximo
año solo se podrá prestar libros a aquellas personas que sean socios de la
biblioteca. Para ello se decide añadir un campo CODIGO_SOCIO (numérico de 5
posiciones) a la tabla PRESTAMOS.
Añadir ese campo a la tabla PRESTAMOS
con el valor 0 para las filas que ya existen.
11 - Se decide que no se quiere guardar
información anterior a este año.
Borrar todos los préstamos que se hayan
realizado en años anteriores y estén devueltos.
sábado, 13 de abril de 2013
EJEMPLO DE COMPOSICION DE TABLAS
select p.pedido_no as 'No Fact',c.nombre as 'nombre del cliente'
,pr.descripcion
,p.unidades
,p.FECHA_PEDIDO
,e.APELLIDO
,d.DNOMBRE
from PEDIDOS p
inner join CLIENTES c
on p.CLIENTE_NO = c.CLIENTE_NO
inner join PRODUCTOS pr
on p.PRODUCTO_NO = pr.PRODUCTO_NO
inner join empleados e
on e.EMP_NO = c.VENDEDOR_NO
inner join departamentos d
on e.DEP_NO = d.DEP_NO
select p.pedido_no as 'No Fact',c.nombre as 'nombre del cliente'
,pr.descripcion
,p.unidades
,p.FECHA_PEDIDO
,e.APELLIDO
,d.DNOMBRE
from PEDIDOS p,CLIENTES c,PRODUCTOS pr,empleados e,departamentos d
where p.CLIENTE_NO = c.CLIENTE_NO
and p.PRODUCTO_NO = pr.PRODUCTO_NO
and e.EMP_NO = c.VENDEDOR_NO
and e.DEP_NO = d.DEP_NO
,pr.descripcion
,p.unidades
,p.FECHA_PEDIDO
,e.APELLIDO
,d.DNOMBRE
from PEDIDOS p
inner join CLIENTES c
on p.CLIENTE_NO = c.CLIENTE_NO
inner join PRODUCTOS pr
on p.PRODUCTO_NO = pr.PRODUCTO_NO
inner join empleados e
on e.EMP_NO = c.VENDEDOR_NO
inner join departamentos d
on e.DEP_NO = d.DEP_NO
select p.pedido_no as 'No Fact',c.nombre as 'nombre del cliente'
,pr.descripcion
,p.unidades
,p.FECHA_PEDIDO
,e.APELLIDO
,d.DNOMBRE
from PEDIDOS p,CLIENTES c,PRODUCTOS pr,empleados e,departamentos d
where p.CLIENTE_NO = c.CLIENTE_NO
and p.PRODUCTO_NO = pr.PRODUCTO_NO
and e.EMP_NO = c.VENDEDOR_NO
and e.DEP_NO = d.DEP_NO
LLAVES PRIMARIAS Y FORANEAS BASE DE DATOS CURSO
departamentos dep_no pk
empleados emp_no pk
empleados director fk refere empleados emp_no
empleados dep_no fk refe departamentos dep_no
productos producto_no pk
clientes cliente_no pk
cliente vendedor_no refere empleados emp_no
pedidos pedido_no pk
pedidos cliente_no fk referen clientes cliente_no
pedidos producto_no refere productos producto_no
empleados emp_no pk
empleados director fk refere empleados emp_no
empleados dep_no fk refe departamentos dep_no
productos producto_no pk
clientes cliente_no pk
cliente vendedor_no refere empleados emp_no
pedidos pedido_no pk
pedidos cliente_no fk referen clientes cliente_no
pedidos producto_no refere productos producto_no
MONOGRAFICO SANTIAGO EVALUACION PRIMER MODULO
EL PROXIMO DOMINGO 21 DE ABRIL, 2013 SE REALIZARA LA EVALUACION DEL MODULO DE GESTION Y CONSULTA DE DATOS
A PARTIR DE LAS 10:00 A.M.
A PARTIR DE LAS 10:00 A.M.
PRACTICA DE LABORATORIO MEGACENTRO GRUPO DE LA TARDE
UNIVERSIDAD DOMINICANA OYM
GESTION Y CONSULTA DE DATOS CON SQL
PRÁCTICA DE LABORATORIO Nº 2
Instructor: Lic. Elvin German
1. Se tiene una base de datos
de películas reflejada por las siguientes tablas
Película
(#tıtulo, #ano, duración, nombre_estudio)
Estrella
(#nombre, dirección, sexo, fecha_nacimiento)
Estudio
(#nombre, dirección)
Protagoniza
(#tıtulo_pelıcula, #ano_pelıcula, #nombre_estrella)
Se pide realizar las
siguientes consultas en SQL (Se supone que todos los datos necesarios se
encuentran almacenados en las tablas):
1.
Encontrar la dirección de los estudios MGM.
2.
Encontrar todas las estrellas que participaron
en películas realizadas en 2006 o en alguna película que contenga la palabra
“Amor” en el título.
3.
¿Quién fue la estrella masculina del “Hombre
Araña 3”?
4.
¿Qué
películas tienen mayor duración que “Lo que el viento se llevo”?
5.
Encontrar
el título y la duración de todas las películas producidas por los estudios Disney
en el año 1990, ordenando la salida por su duración?
6.
Encontrar
todas las estrellas que son hombres o viven en Malibú (tienen Malibú como parte
de su dirección).
7.
¿Qué
estrellas distintas aparecen en las películas producidas por la MGM en 2005? (Si
una aparece varias veces mostrarla solo una vez).
8.
Encontrar
la suma de la duración de todas las películas de cada estudio.
2. Dada una base de datos de ordenadores e impresoras con las siguientes
tablas
Producto
(#fabricante, #modelo, tipo)
PC (#modelo,
velocidad, ram, hd, cd, precio)
Impresora
(#modelo, color, tipo, precio)
Realizar en SQL las
siguientes consultas:
1. Encontrar el modelo, velocidad y tamaño de disco duro (hd) de todos
los PC’s cuyo precio sea inferior a
$1600.
2. Repetir la consulta de (a), pero cambiando el nombre a las columnas
velocidad como Megaherzios y hd como Gigabytes.
3. Encontrar todas las filas de la tabla de Impresoras que son en color.
El valor de la columna color es booleano con los valores ’V’ y ’F’.
4. Encontrar la velocidad media de los PC’s.
5. Decir los fabricantes y la velocidad de los PC’s con disco duro de tamaño
mayor o igual a 1 Gigabyte.
6. Encontrar los fabricantes de los PC’s con velocidad superior a 160
MHz.
3. Dadas las siguientes
tablas, dar una expresión SQL para cada una de las siguientes consultas:
Vive
(#nombre, calle, ciudad)
Trabaja
(#nombre, #compania, salario)
Situada
(#compania, ciudad)
Dirige
(#nombre, #nombre_director)
1.
Encontrar el nombre y la ciudad de todos los empleados
que trabajan en Plaza Lama
2.
Encontrar todos los empleados que viven en la
misma ciudad que la compañía en la que trabajan.
3.
Encontrar el salario y la compañía de todos los
directores.
4.
Encontrar a todos los empleados que viven en la
misma ciudad y en la misma calle que su director.
4. Dadas las siguientes tablas
relacionales:
Cigarrillo (#marca, #filtro, nombre_fabricante, precio)
Estanco (#CI, nombre, direccion)
Fabricante (#nombre, pais)
Compras (#CI, #marca, #filtro, ano, cantidad, precio)
Ventas (#CI, #marca, #filtro, ano, cantidad, precio)
Plantear las siguientes
preguntas utilizando SQL:
1.
Obtener todas las marcas de cigarrillos
extranjeros.
2.
Obtener el total de compras de cigarrillos con
filtro (filtro = ’S’) realizadas por marca.
3.
Obtener una relación completa de todas las
compras y ventas realizadas.
5. Dadas las siguientes tablas relacionales:
Persona (#Cedula, nombre, apellidos, calle, numero,
Cod_sector, planta, puerta, metros)
Piso (#calle, #numero, #Sector, #planta)
Sector (#codigo, nombre)
Plantear las siguientes
preguntas utilizando SQL:
1.
Obtener Cedula de todos los propietarios de una casa en la
zona Colonial con el numero 222.
2.
Obtener cedula, nombre y apellidos de los
propietarios de un piso en la calle Independencia, numero 2021.
3.
Obtener todos los pisos de más de 50m2 cuyo propietario tiene la
cedula 001-0000142-1
4.
Obtener el número de personas que viven en la
“Av. Bolívar”.
5.
Obtener el número de personas que viven en el
Sector “La feria”.
Nota: Analizar las
estructuras de cada tabla y seleccionar los tipos datos más recomendados para
cada campo o atributo, si necesitas introducir datos lo pueden realizar.
Suscribirse a:
Entradas (Atom)
