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.

domingo, 19 de agosto de 2012

PRACTICA DE ENVIO FINAL GRUPOS SPUERTO PLATA 2014

EJECUTAR EL SIGUIENTE QUERY EN SQL, EL MISMO CREARA UNA BASE DE DATOS LLAMADA CONSTRUCTORA, LA CUAL A SU VEZ INSERTARA TODOS LOS REGISTROS; CON LA CUAL PODRAN CREAR LAS CONSULTAS QUE SE MOSTRARAN EN EL ANEXO:

LAS TABLAS QUE LA CONFORMAN SON:

TRABAJADOR
ASIGNACION
EDIFICIO


--QUERY A EJECUTAR (COPIAR ESTE CODIGO Y EJECUTARLO EN SQL)

create database Constructora
GO
USE Constructora
GO
/****** Object:  Table [dbo].[Trabajador]    Script Date: 08/19/2012 19:20:23 ******/
CREATE TABLE [dbo].[Trabajador](
 [ID_TRABAJADOR] [varchar](5) NOT NULL,
 [NOMB_TRABAJADOR] [varchar](12) NULL,
 [TARIFA_HR] [float] NULL,
 [OFICIO] [varchar](15) NULL,
 [ID_SUPLY] [int] NULL,
 CONSTRAINT [PK_TRABAJADOR_ID_TRABAJADOR] PRIMARY KEY CLUSTERED
(
 [ID_TRABAJADOR] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
INSERT [dbo].[Trabajador] ([ID_TRABAJADOR], [NOMB_TRABAJADOR], [TARIFA_HR], [OFICIO], [ID_SUPLY]) VALUES (N'1235', N'M Faraday', 12.5, N'Electricista', 1311)
INSERT [dbo].[Trabajador] ([ID_TRABAJADOR], [NOMB_TRABAJADOR], [TARIFA_HR], [OFICIO], [ID_SUPLY]) VALUES (N'1311', N'C Coulomb', 15.5, N'Electricista', 1311)
INSERT [dbo].[Trabajador] ([ID_TRABAJADOR], [NOMB_TRABAJADOR], [TARIFA_HR], [OFICIO], [ID_SUPLY]) VALUES (N'1412', N'C Nemo', 13.75, N'Fontanero', 1520)
INSERT [dbo].[Trabajador] ([ID_TRABAJADOR], [NOMB_TRABAJADOR], [TARIFA_HR], [OFICIO], [ID_SUPLY]) VALUES (N'1520', N'H Rickover', 11.75, N'Fontanero', 1520)
INSERT [dbo].[Trabajador] ([ID_TRABAJADOR], [NOMB_TRABAJADOR], [TARIFA_HR], [OFICIO], [ID_SUPLY]) VALUES (N'2920', N'R Garret', 10, N'Albanil', 2920)
INSERT [dbo].[Trabajador] ([ID_TRABAJADOR], [NOMB_TRABAJADOR], [TARIFA_HR], [OFICIO], [ID_SUPLY]) VALUES (N'3001', N'J Barrister', 8.2, N'Carpintero', 3231)
INSERT [dbo].[Trabajador] ([ID_TRABAJADOR], [NOMB_TRABAJADOR], [TARIFA_HR], [OFICIO], [ID_SUPLY]) VALUES (N'3231', N'P Mason', 17.4, N'Carpintero', 3231)
go
/****** Object:  Table [dbo].[edificio]    Script Date: 08/19/2012 19:20:23 ******/
CREATE TABLE [dbo].[edificio](
 [ID_EDIFICIO] [varchar](5) NOT NULL,
 [DIR_EDIFICIO] [varchar](12) NULL,
 [TIPO] [varchar](11) NULL,
 [NIVEL_CALIDAD] [int] NULL,
 [CATEGORIA] [int] NULL,
 CONSTRAINT [PK_EDIFICIO] PRIMARY KEY CLUSTERED
(
 [ID_EDIFICIO] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
INSERT [dbo].[edificio] ([ID_EDIFICIO], [DIR_EDIFICIO], [TIPO], [NIVEL_CALIDAD], [CATEGORIA]) VALUES (N'111', N'1213 Aspen', N'Oficina', 4, 1)
INSERT [dbo].[edificio] ([ID_EDIFICIO], [DIR_EDIFICIO], [TIPO], [NIVEL_CALIDAD], [CATEGORIA]) VALUES (N'210', N'1011Birch', N'Oficina', 3, 1)
INSERT [dbo].[edificio] ([ID_EDIFICIO], [DIR_EDIFICIO], [TIPO], [NIVEL_CALIDAD], [CATEGORIA]) VALUES (N'312', N'123 Elm', N'Oficina', 2, 2)
INSERT [dbo].[edificio] ([ID_EDIFICIO], [DIR_EDIFICIO], [TIPO], [NIVEL_CALIDAD], [CATEGORIA]) VALUES (N'435', N'456 Maple', N'Comercio', 1, 1)
INSERT [dbo].[edificio] ([ID_EDIFICIO], [DIR_EDIFICIO], [TIPO], [NIVEL_CALIDAD], [CATEGORIA]) VALUES (N'460', N'1415 Beech', N'Almacen', 3, 3)
INSERT [dbo].[edificio] ([ID_EDIFICIO], [DIR_EDIFICIO], [TIPO], [NIVEL_CALIDAD], [CATEGORIA]) VALUES (N'515', N'789 Oak', N'Residencia', 3, 1)
GO
/****** Object:  Table [dbo].[ASIGNACION]    Script Date: 08/19/2012 19:20:23 ******/
CREATE TABLE [dbo].[ASIGNACION](
 [ID_TRABAJADOR] [varchar](5) NULL,
 [ID_EDIFICIO] [varchar](5) NULL,
 [FECHA_INICIO] [datetime] NULL,
 [NUM_DIAS] [int] NULL
) ON [PRIMARY]
GO
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1235', N'312', CAST(0x0000979F00000000 AS DateTime), 5)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1412', N'312', CAST(0x0000979600000000 AS DateTime), 10)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1235', N'515', CAST(0x000097A600000000 AS DateTime), 22)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'2920', N'460', CAST(0x0000979A00000000 AS DateTime), 18)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1412', N'460', CAST(0x0000989100000000 AS DateTime), 18)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'2920', N'435', CAST(0x000097B100000000 AS DateTime), 10)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'2920', N'210', CAST(0x000097BD00000000 AS DateTime), 15)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'3231', N'111', CAST(0x0000979F00000000 AS DateTime), 8)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1412', N'435', CAST(0x000097A400000000 AS DateTime), 15)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1412', N'515', CAST(0x000097B800000000 AS DateTime), 8)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'3231', N'312', CAST(0x000097AD00000000 AS DateTime), 20)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1520', N'515', CAST(0x0000979E00000000 AS DateTime), 14)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1311', N'435', CAST(0x0000979D00000000 AS DateTime), 12)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1412', N'210', CAST(0x000097C200000000 AS DateTime), 12)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1412', N'111', CAST(0x000097D300000000 AS DateTime), 4)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'3001', N'111', CAST(0x0000979D00000000 AS DateTime), 14)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1311', N'460', CAST(0x000097AC00000000 AS DateTime), 24)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'1520', N'312', CAST(0x000097B300000000 AS DateTime), 17)
INSERT [dbo].[ASIGNACION] ([ID_TRABAJADOR], [ID_EDIFICIO], [FECHA_INICIO], [NUM_DIAS]) VALUES (N'3001', N'210', CAST(0x000097B000000000 AS DateTime), 14)
/****** Object:  Default [DF__edificio__TIPO__7F60ED59]    Script Date: 08/19/2012 19:20:23 ******/
ALTER TABLE [dbo].[edificio] ADD  DEFAULT ('OFICINA') FOR [TIPO]
GO
/****** Object:  Default [DF__edificio__CATEGO__00551192]    Script Date: 08/19/2012 19:20:23 ******/
ALTER TABLE [dbo].[edificio] ADD  DEFAULT ((1)) FOR [CATEGORIA]
GO
/****** Object:  Check [CK_CATEGORIA]    Script Date: 08/19/2012 19:20:23 ******/
ALTER TABLE [dbo].[edificio]  WITH CHECK ADD  CONSTRAINT [CK_CATEGORIA] CHECK  (([CATEGORIA]>=(0) AND [CATEGORIA]<=(4)))
GO
ALTER TABLE [dbo].[edificio] CHECK CONSTRAINT [CK_CATEGORIA]
GO
/****** Object:  ForeignKey [FK_ID_EDIFICIO]    Script Date: 08/19/2012 19:20:23 ******/
ALTER TABLE [dbo].[ASIGNACION]  WITH CHECK ADD  CONSTRAINT [FK_ID_EDIFICIO] FOREIGN KEY([ID_EDIFICIO])
REFERENCES [dbo].[edificio] ([ID_EDIFICIO])
GO
ALTER TABLE [dbo].[ASIGNACION] CHECK CONSTRAINT [FK_ID_EDIFICIO]
GO
/****** Object:  ForeignKey [FK_ID_TRABAJADOR]    Script Date: 08/19/2012 19:20:23 ******/
ALTER TABLE [dbo].[ASIGNACION]  WITH CHECK ADD  CONSTRAINT [FK_ID_TRABAJADOR] FOREIGN KEY([ID_TRABAJADOR])
REFERENCES [dbo].[Trabajador] ([ID_TRABAJADOR])
GO
ALTER TABLE [dbo].[ASIGNACION] CHECK CONSTRAINT [FK_ID_TRABAJADOR]
GO



ANEXO:

Realizar las siguientes consultas:

1.    Cual es el número total de días asignados a fontanería en el edificio 312

2.    Cuales son los oficios de los trabajadores asignados al edificio 435

3.    Quienes tienen una tarifa por hora entre $10 y $12

4.    Indicar los trabajadores que están asignados a todos los edificios

5.    Cual es el promedio de días que los trabajadores están asignados al edificio 435

6.    Para cada tipo de edificio, Cual es el nivel de calidad medio de los edificios con categoría 1.  Considere solo aquellos tipos de edificios que tienen un nivel de calidad máximo no mayor de 3

7.    Cuantos tipos de oficio diferentes hay en la tabla trabajador

 

lunes, 13 de agosto de 2012

PRACTICA ADICIONAL GRUPO SABADO Y DOMINGO OCOA 2012

VERIFICAR SUS CUENTAS DE CORREO, LES ENVIE UN ARCHIVO, EN EL CUAL TENDRAN QUE DESARROLLAR UNA PRACTICA CONCERNIENTE A LAS CREACIONES DE TABLAS.

FAVOR HACERLES SABER A SUS COMPANEROS, SOBRE SU ENVIO, YA QUE SIEMPRE SUCEDE QUE ALGUNOS NO RECIBEN SUS CORREOS.

POR OTRO LADO RECUERDEN QUE FUERA DE ESTA PRACTICA TIENEN QUE DESARROLLAR LOS PUNTOS DEL MANUAL DE TRABAJO, ELABOREN LAS PRACTICAS, HASTA LOS TEMAS QUE FUERON IMPARTIDOS EN EL AULA.

POSTDATA:  EL ARCHIVO WORD QUE LES ADJUNTE ESTA ELABORADO EL OFFICE 2007, POR SI TIENEN UNA VERSION NO MUY RECIENTE

miércoles, 8 de agosto de 2012

PRACTICA SUPLEMENTARIA GRUPO SABADO OCOA 2012

FECHA DE ENVIÓ: SABADO 11 DE AGOSTO, 2012
SI DESEAN ENVIARLO ANTES, PUEDEN HACERLO
ENTREGAR TAL CUAL ESTÁN FORMADOS LOS GRUPOS


SE CUENTA CON UNA BASE DE DATOS PARA LA TIENDA DE LIBROS LA LA CULTURA CON LAS SIGUIENTES TABLAS:

EDITORIAL(#codeditorial, nomeditorial, paiseditorial, direditorial, teleditorial)

AUTOR(#codautor, nomautor, paisautor, codgenero, premnobelautor)

GENERO(#codgenero, descgenero)

LIBRO(#codlibro, nomlibro, isbn, codeditorial, codautor, codgenero, fechaedilibro, numpaglibro)

Realizar las siguientes consultas en SQL (Asumimoa que todos los datos necesarios se encuentran almacenados en las tablas):

1. Consultar todos los datos de la tabla GENERO

2. Consultar la dirección de la editorial McGraw Hill en Taiwan

3. Quién es el autor del libro “Análisis y Diseño de Sistemas”

4. Encontrar los autores   con más de 2 premios nóbel en género: literatura    

5. Encontrar los nombres de las editoriales cuyo nombre comience con la letra 'a' o que al menos tenga una  letra 'e' en cualquier lugar del nombre

6. Consultar los nombres de los autores cuyo pais sea panama

domingo, 29 de julio de 2012

LINK SQL DE INTERES (MONOGRAFICO OCOA 2012)

ESTE LINK TIENE PARTE DE LOS TEMAS EXPUESTOS EN EL AULA, ENTREN DENTRO DE ESTA DIRECCION, PARA QUE PUEDAN LEER Y COMPRENDER CIERTOS PUNTOS EXPLICADOS.

ENCONTRARAN ALGUNAS COSAS QUE NO LES HE DADO, PERO AL MENOS TRATEN DE IR VERIFICANDO, PARA QUE PUEDAN TOMAR  MAS CONOCIMIENTO.


http://www.slideshare.net/fsilvasys/aprenda-sql-server


NOTA:

      DEBEN ELABORAR LOS EJERCICIOS DEL MANUAL DE TRABAJO DE LOS TEMAS 1 Y 2 DEL MANUAL DE TRABAJO

lunes, 23 de julio de 2012

MONOGRAFICO OCOA 2012

HOLA A TODOS, ESPERO QUE SE ENCUENTREN BIEN

LES HAGO SABER QUE EN ESTA SEMANA NO TENDREMOS CLASE, DEBIDO A LA CELEBRACION DEL DIA DE LOS PADRES.

DE IGUAL FORMA LES INFORMO, QUE EN EL DIA DE MANANA TENDRAN DISPONIBLE, LAS ACTIVIDADES QUE DESARROLLARAN, DURANTE ESTE ASUETO QUE LES ESTOY BRINDANDO

CUALQUIER INQUIETUD, PUEDEN CONTACTARME AL CELULAR, O VIA EMAIL, ENVIARME UN MENSAJE; CON MUCHO GUSTO LES DEVOLVERE SUS RESPUESTAS

SALUDOS

lunes, 16 de julio de 2012

CLASE PROXIMO SABADO -ESTUDIANTES OCOA 2012-

BUENAS TARDES LES ESCRIBO PARA INFORMARLES QUE EL PROXIMO SABADO 21 DE JULIO, 2012 EL GRUPO QUE QUEDO PARA LOS SABADOS TENDRAN  CLASE DE MONOGRAFICO A PARTIR DE LAS 3 DE LA TARDE FAVOR COMUNICAR MENSAJE A LOS DEMAS ESTUDIANTES QUE NO CUENTEN CON MEDIOS COMO EL INTERNET
esta noche les subire la practica

Saludos

miércoles, 7 de marzo de 2012

PRACTICA SUPLEMENTARIA GESTION Y CONSULTA DE DATOS

---------------------
TIENDA DE INFORMATICA
---------------------

TABLA FABRICANTES
-----------------
PK CODIGO INT IDENTITY
NOMBRE NVARCHAR(100)

TABLA ARTICULOS
---------------
PK CODIGO INT IDENTITY
NOMBRE NVARCHAR(100)
PRECIO FLOAT
FK1 FABRICANTE INT

1. OBTENER EL PRECIO MEDIO DE LOS PRODUCTOS DE CADA FABRICANTE, MOSTRANDO SOLAMENTE EL NOMBRE DEL FABRICANTE
2. OBTENER LOS NOMBRE DE LOS FABRICANTES QUE OFREZCAN PRODUCTOS CUYO PRECIO MEDIO SEA MAYOR O IGUAL A 150
3. OBTENER UNA LISTA CON EL NOMBRE Y EL PRECIO DE LOS ARTICULOS MAS CAROS DE CADA PROVEEDOR (INCLUYENDO EL NOMBRE DEL PROVEEDOR)
4. ANADIR UN NUEVO PRODUCTO:
5. CAMBIAR EL NOMBRE DEL PRODUCTO 8 A 'IMPRESORA LASER'
6. APLICAR UN DESCUENTO DEL 10% (MULTIPLICAR EL PRECIO POR 0.9) A TODOS LOS PRODUCTOS
7. APLICAR UN DESCUENTO DE UN 10% A TODOS LOS PRODCUTOS CUYO PRECIO SEA MAYOR O IGUAL A 120
8. OBTENER LOS NOMBRES DE LOS PRODUCTOS DE LA TIENDA
9. OBTENER LOS NOMBRES Y LOS PRECIOS DE LOS PRODUCTOS
10. OBTENER EL NOMBRE DE LOS PRODUCTOS CUYO PRECIO SEA MENOR O IGUAL A 200
11. OBTENER TODOS LOS DATOS DE LOS ARTICULOS CUYO PRECIO ESTE ENTRE 60 Y LOS 120 PESOS
12. SELECCIONAR EL PRECIO MEDIO DE TODOS LOS PRODUCTOS
13. OBTENER EL PRECIO MEDIO DE TODOS LOS ARTICULOS CUYO FABRIUCANTE SEA 2
14. OBTENER EL NOMBRE Y EL PRECIO DE LOS ARTICULOS CUYO PRECIO SEA MAYOR O IGUAL A 180 PESOS Y OORDENARLOS DESCENDENTEMENTE POR PRECIO, Y LUEGO ASCDENTENTEMENTE PPOR NOMBRE
15. MOSTRAR UN LISTADO COMPLETO DE ARTICULOS, INCLUYENDO POR CADA ARTICULO LOS DATOS DEL ARTICULO Y DE SU FABRICANTE.
16. OBTENER EL PRECIO MEDIO DE LOS PRODUCTOS DE CADA FABRICANTE, MOSTRANDO SOLAMENTE LOS CODIGOS DE FABRICANTE

RECUERDEN QUE DEBEN DESARROLLAR DEL MANUAL DE TRABAJO EL TEMA 3 DE CREACION DE TABLAS Y EL TEMA 4 DE ACTUALIZACION DE TABLAS Y DARLE SEGUIMIENTO A LOS TEMAS QUE SE EXPUSIERON

CON RELACION A LOS TEMAS QUE QUEDE DE ENVIARLES, SE LAS ENTREGARE ESTE PROXIMO SABADO 10 DE MARZO, 2012. YA QUE SON MUCHOS TEMAS, Y HE TENIDO QUE DESARROLLAR LAS SEPARACION Y DISTRIBUCION DE LOS MISMOS.