lunes, 4 de noviembre de 2013

Practica1 SQL Server

 
Creacion de la tabla
 CREATE TABLE [dbo].[Persona](
    [IdPersona] [int] NOT NULL,
    [PersonaNombre] [varchar](60) NOT NULL,
    [PersonaApellido] [varchar](60) NULL,
    [FechaNacimiento] [date] NOT NULL,
    [CURP] [varchar](13) NULL,
    [PersonaDomicilio] [varchar](150) NULL,
 CONSTRAINT [PK_Persona] PRIMARY KEY CLUSTERED
(
    [IdPersona] 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
Insercion de datos

consultas
 


 Actualizaciones


 Funciones Agregadas




Creacion de Vistas


Vista 1
CREATE VIEW [dbo].[PersonaFecha]
AS
SELECT     TOP (100) PERCENT IdPersona, PersonaApellido, FechaNacimiento, PersonaDomicilio
FROM         dbo.Persona
ORDER BY PersonaApellido

GO

Vista 2
CREATE VIEW [dbo].[PersonaCURP]
AS
SELECT     PersonaNombre, CURP, PersonaApellido
FROM         dbo.Persona

GO

Vista 3
CREATE VIEW [dbo].[ListaPersona]
AS
SELECT     TOP (100) PERCENT IdPersona AS id, PersonaNombre AS nombre, PersonaApellido AS apellido
FROM         dbo.Persona
ORDER BY id

GO


sábado, 2 de noviembre de 2013

Podcast grabado

por medio del link se podrá escuchar el audio guardado.


https://drive.google.com/file/d/0B73CezBVtlTNS1dFYUo2N1VpUFE/edit?usp=sharing

domingo, 27 de octubre de 2013

Proyecto Final

Acá se encuentra la dirección del diccionario de datos y del diagrama E-R del proyecto final.



https://drive.google.com/file/d/0B73CezBVtlTNNTJyYmRXZlpUMG8/edit?usp=sharing
https://drive.google.com/file/d/0B73CezBVtlTNaVhGc0loWW94T2s/edit?usp=sharing

viernes, 18 de octubre de 2013

Vistas es Oracle

Vistas verticales.
Otro uso habitual de las vistas es restringir el acceso de un usuario a sólo ciertas columnas de una tabla.

Vistas horizontales.
Un uso de las vistas es restringir el acceso de un usuario a un conjunto de filas seleccionadas de una tabla



Vistas en SQL:

SQL> CREATE VIEW VempleadosVentas AS
  2  SELECT  e.nombre,e.apellido, p.*
  3  FROM empleados e
  4  JOIN pedidos p ON p.atendido_por=e.codigo_empleado;

Vista creada.

SQL> CREATE VIEW VentasDiarias AS
  2  SELECT  p.fecha_pedido, SUM(d.precio_unitario*d.cantidad*(1-d.descuento))
as "monto vendido"
  3  FROM pedidos p
  4  JOIN detalles_del_pedido d ON p.pedido_id=d.pedido_id
  5  GROUP BY fecha_pedido;

Vista creada.

SQL> CREATE VIEW UnidadesPorPedido AS
  2  SELECT pedido_id, SUM(cantidad) as "productos por pedido"
  3  FROM detalles_del_pedido
  4  GROUP BY pedido_id;

Vista creada.

SQL> CREATE VIEW InformacionPedido AS
  2  SELECT d.precio_unitario as preciocobrado,
  3  d.producto_id,
  4  p.nombre_producto,
  5  p.precio_unitario as preciolista
  6  FROM productos p
  7  JOIN detalles_del_pedido d ON   p.codigo_producto=d.producto_id;

Vista creada.

SQL> CREATE VIEW PedidosDetallados AS
  2  SELECT d.*,p.nombre_producto,p.nombre_latin ,c.*
  3  FROM productos p
  4  JOIN detalles_del_pedido d ON   p.codigo_producto=d.producto_id
  5  JOIN categorias c ON c.nombre_categoria=p.categoria;


Vista creada.

lunes, 14 de octubre de 2013

Actividad 14 de Octubre

Ricardo Toledo / Genaro Bergero

FUNCIONES AGREGADAS
SUM- Ofrece la Sumatoria de la columna que sea puesta dentro del parentesis.
AVG- Ofrece el promedio numerico de la columna que sea puesta dentro del parentesis.
MIN,MAX- Ofrece el minimo y el maximo valor de la columa o columnas especificadas.
ORDER BY- Ordena  la consulta por el campo que se le especifique en orden ascendente  ASC o descendente segun sea el caso con DESC.
GROUP BY- Agrupa las funciones agregadas por el campo especificado sin repetir.
COUNT- Devuelve la cuenta de los valores no nulos del campo especificado.
VSIZE- Devuelve el tamaño en bytes de cada registro del campo especificado.
ROWNUM<X- Devuelve X-1filas
VARIANCE- Retorna la varianza de un campo
STDDEV- Devuelve el desvio estandar

sábado, 5 de octubre de 2013

Inserción de datos y busqueda en BD jardineria


CLIENTES

SQL> INSERT INTO CLIENTE (nombre,apellido,direccion,localidad,region,codigo_post
al,pais,telefono,codigo_cliente) values('Pilar','Ackerman','8808 Backbay Street'
,'Bellevue','WA','88004','EE.UU.',4255550194,01);

1 fila creada.

SQL> INSERT INTO CLIENTE (nombre,apellido,direccion,localidad,region,codigo_post
al,pais,telefono,codigo_cliente) values('Chris','Ashton','89 Cedar Way','Redmond
','WA','88052','EE.UU.',4255550191,04);

1 fila creada.

SQL> INSERT INTO CLIENTE (nombre,apellido,direccion,localidad,region,codigo_post
al,pais,telefono,codigo_cliente) values('Terry','Adams','1932 52nd Ave','Vancouv
er','BC',419,'Canada',6045550193,02);

1 fila creada.

SQL> INSERT INTO CLIENTE (nombre,apellido,direccion,localidad,region,codigo_post
al,pais,telefono,codigo_cliente) values('Michael','Allen','130 17th St.','Vancou
ver','BC',419,'Canada',6045550192,03);

1 fila creada.


EMPLEADOS


SQL> insert into empleados (nombre,apellido,puesto,direccion,localidad,estado,co
digo_postal,telefono,fecha_de_nacimiento,fecha_de_contratacion,codigo_empleado)
values('Karen','Berg','Propietario','765-20th Ave.E.','Seatle','WA',88102,555010
0,TO_DATE('12/8/1968','MM-DD-YY'), TO_DATE('5/1/2008','MM-DD-YY'), 001);

1 fila creada.

SQL> insert into empleados (nombre,apellido,puesto,direccion,localidad,estado,co
digo_postal,telefono,fecha_de_nacimiento,fecha_de_contratacion,codigo_empleado)
 values ('Kim','Arkers','Jefe de compras','890 NE 87th Dr.','Seatle','WA',88125,
5550101, TO_DATE('2/19/1973','MM-DD-YY'), TO_DATE('6/1/2008','MM-DD-YY'),002);

1 fila creada.

SQL> insert into empleados (nombre,apellido,puesto,direccion,localidad,estado,co
digo_postal,telefono,fecha_de_nacimiento,fecha_de_contratacion,codigo_empleado)
values('Tom','O neill','Asistente','789 Moss Bay Blvd.','Kirkland','WA',88033,55
50102, TO_DATE('8/30/1988','MM-DD-YY'), TO_DATE('11/2/2008','MM-DD-YY'),003);

1 fila creada.

SQL> insert into empleados (nombre,apellido,puesto,direccion,localidad,estado,co
digo_postal,telefono,fecha_de_nacimiento,fecha_de_contratacion,codigo_empleado)
values('Naoki','Sato','Jefe de ventas','123 leary wy.','Seatle','WA',88117,55501
03, TO_DATE('9/19/1976','MM-DD-YY'), TO_DATE('8/14/2009','MM-DD-YY'),004);

1 fila creada.

SQL> insert into empleados (nombre,apellido,puesto,direccion,localidad,estado,co
digo_postal,telefono,fecha_de_nacimiento,fecha_de_contratacion,codigo_empleado)
values('Molly','Dempsey','jardinero','432 pike st.','Seatle','WA',88119,5550104,
 TO_DATE('3/4/1983','MM-DD-YY'), TO_DATE('10/17/2009','MM-DD-YY'),005);

1 fila creada.




PROVEEDORES




SQL> Insert into proveedores values('oh rayos','franchesca','repartidor','Aconca
gua 1294','Jalisco',26945,32145689,289710,2);

1 fila creada.

SQL> Insert into proveedores values('rajas','pancho do','gerencia','fresno 2000'
,'Jalisco',26945,7896453215,546519,1);

1 fila creada.

SQL> Insert into proveedores values('inverrosa','marcos','secretario','Revolucio
n','Jalisco',26945,0325874,369425,3);

1 fila creada.





CATEGORIAS




SQL> Insert into categorias values('bulbos','primavera,verano y otoño, floración
 forzada',1);

1 fila creada.

SQL> Insert into categorias values('cactus','cactus del interior',2);

1 fila creada.

SQL> Insert into categorias values('cespedes','cespedes para climas frios',4);

1 fila creada.

SQL> Insert into categorias values('flores','amplia variedad de flores',5);

1 fila creada.

SQL> Insert into categorias values('cubiertas veget','perennes herbáceas, hiedra
s, enredaderas, musgos',3);

1 fila creada.


TRANSPORTISTAS


SQL> Insert into transportistas values('daniel´s transport','daniel fernandez','
25 hersilla','Juarez','Colima',25869,25413682,1);

1 fila creada.

SQL> Insert into transportistas values('transportes ramon','francisco salomon','
250 rosaltino','Juarez','Colima',25869,2596481,2);

1 fila creada.

SQL> Insert into transportistas values('transp. Raul','Raul roman','684 numbata'
,'Oblatos','Colima',6759,96485321,3);

1 fila creada.



PRODUCTOS



SQL> Insert into productos values('lirio magico','lycoris squamigera',2,'bulbos'
,12,48.40,40,0,10,0,1);

1 fila creada.

SQL> Insert into productos values('azafran de otoño','colchicum',2,'bulbos',12,2
2.69,37,0,10,0,2);

1 fila creada.

SQL> Insert into productos values('forsitia','Forsythia suspensa',3,'cespedes',1
,18.00,3,0,1,0,5);

1 fila creada.

SQL> Insert into productos values('cubo de abono','',1,'cespedes',30,58.00,13,0,
10,0,3);

1 fila creada.

SQL> Insert into productos values('tierra para cactus','',3,'cespedes',2,4.50,12
,0,5,0,4);

1 fila creada.



PEDIDOS



SQL> Insert into pedidos values (TO_DATE('17/08/12','DD-MM-YY'), TO_DATE ('19/09
/12','DD-MM-YY'),'DHL',03, TO_DATE ('17/09/12','DD-MM-YY'),1,2,3);

1 fila creada.

SQL> Insert into pedidos values (TO_DATE ('16/08/12','DD-MM-YY'), TO_DATE ('30/0
9/12','DD-MM-YY'),'DHL',1, TO_DATE ('17/09/12','DD-MM-YY'),2,1,1);

1 fila creada.

SQL> Insert into pedidos values (TO_DATE ('10/08/12','DD-MM-YY'), TO_DATE ('5/10
/12','DD-MM-YY'),'OCA',1, TO_DATE ('17/09/12','DD-MM-YY'),3,2,1);

1 fila creada.



DETALLES_DEL_PEDIDO



SQL> Insert into detalles_del_pedido values(58.00,1,0.00,1,1,3);

1 fila creada.

SQL> Insert into detalles_del_pedido values(62.50,1,0.00,2,1,2);

1 fila creada.

SQL> Insert into detalles_del_pedido values(18.75,1,0.00,3,2,4);

1 fila creada.

SQL> Insert into detalles_del_pedido values(24.00,2,0.10,4,2,1);

1 fila creada.

SQL> Insert into detalles_del_pedido values(27.00,1,0.00,5,3,5);

1 fila creada.




SECCION BUSQUEDA 1




SQL> select codigo_producto,nombre_producto,categoria from productos;

CODIGO_PRODUCTO NOMBRE_PRODUCTO      CATEGORIA
--------------- -------------------- ---------------
              1 lirio magico         bulbos
              2 azafran de otoño     bulbos
              5 forsitia             cespedes
              3 cubo de abono        cespedes
              4 tierra para cactus   cespedes





BUSQUEDA 2



SQL> select codigo_cliente, nombre, apellido, direccion from cliente where nombre='Michael';

CODIGO_CLIENTE NOMBRE               APELLIDO             DIRECCION
-------------- -------------------- -------------------- --------------------------------------------------

             3 Michael              Allen                130 17th St.


CONSULTA 3



SQL> select pedidos.fecha_pedido, pedidos.pedido_id,transportistas.compania from
 pedidos,transportistas where transportistas.codigo_transportista=pedidos.transp
ortado_por;

FECHA_PE  PEDIDO_ID COMPANIA
-------- ---------- ------------------------------
17/08/12          1 transportes ramon
16/08/12          2 daniel´s transport
10/08/12          3 transportes ramon

CONSULTA 4



SQL> select detalles_del_pedido.precio_unitario as preciocobrado,detalles_del_pe
dido.producto_id,productos.nombre_producto,productos.precio_unitario as precioli
sta from productos, detalles_del_pedido where
  2  productos.codigo_producto=detalles_del_pedido.producto_id AND
  3  detalles_del_pedido.pedido_id=2;

PRECIOCOBRADO PRODUCTO_ID NOMBRE_PRODUCTO      PRECIOLISTA
------------- ----------- -------------------- -----------
        18,75           4 tierra para cactus           4,5
           24           1 lirio magico                48,4


CONSULTA 5

SQL> select pedido_id, nombre , apellido , puesto from pedidos,empleados where
  2  codigo_empleado=atendido_por AND
  3  pedido_id=1;

 PEDIDO_ID NOMBRE               APELLIDO             PUESTO
---------- -------------------- -------------------- ------------------------------
         1 Tom                  O neill              Asistente



CONSULTA 6


SQL> select nombre_producto, nombre_categoria,descripcion from productos,categor
ias
  2  where categoria=nombre_categoria;

NOMBRE_PRODUCTO      NOMBRE_CATEGORI DESCRIPCION
-------------------- --------------- --------------------------------------------------
lirio magico         bulbos          primavera,verano y otoño, floración forzada

azafran de otoño     bulbos          primavera,verano y otoño, floración forzada

forsitia             cespedes        cespedes para climas frios

cubo de abono        cespedes        cespedes para climas frios

tierra para cactus   cespedes        cespedes para climas frios



CONSULTA 7



SQL> Select nombre_del_proveedor, nombre_producto from productos,proveedores
  2  where codigo_proveedor=proveedor;

NOMBRE_DEL NOMBRE_PRODUCTO
---------- --------------------
oh rayos   lirio magico
oh rayos   azafran de otoño
inverrosa  forsitia
rajas      cubo de abono
inverrosa  tierra para cactus


CONSULTA 8


SQL> select pedidos.*, nombre,localidad from pedidos, cliente where codigo_clien
tes=codigo_cliente;

FECHA_PE FECHA_DE RUTA_DE_ENVIO  CODIGO_CLIENTES FECHA_OB  PEDIDO_ID TRANSPORTADO_POR ATENDIDO_POR NOMBRE               LOCALIDAD
-------- -------- -------------- --------------- -------- ---------- ---------------- ------------ -------------------- --------------------
17/08/12 19/09/12 DHL                          3 17/09/12          1                2            3 Michael              Vancouver

16/08/12 30/09/12 DHL                          1 17/09/12          2                1            1 Pilar                Bellevue

10/08/12 05/10/12 OCA                          1 17/09/12          3                2            1 Pilar                Bellevue


lunes, 30 de septiembre de 2013

ejercicio jardineria

SQL> create table categorias(nombre_categoria varchar(15) primary key Not Null,
descripcion varchar(50));

Tabla creada.

SQL> create table proveedores(nombre_del_proveedor varchar(10),nombre_contacto v
archar(10),puesto_contacto varchar(10), direccion varchar(20), estado varchar(20
),codigo_postal integer, telefono integer,fax integer, codigo_proveedor integer
primary key);

Tabla creada.

SQL> create table productos(nombre_producto varchar(20),nombre_latin varchar(30)
,proveedor integer, categoria varchar(15),cantidad_por_unidad integer, precio_un
itario Decimal(10,2), unidades_en_stock integer, unidades_pedidas integer, minim
o_en_stock integer,descatalogado integer,codigo_producto integer primary key);

Tabla creada.

SQL> create table transportistas(compania varchar(30),contacto varchar(30),direc
cion varchar(20),localidad varchar(20),estado varchar(20),codigo_postal integer,
telefono integer, codigo_transportista integer primary key Not Null);

Tabla creada.

SQL> create table empleados(nombre varchar(20),apellido varchar(20),puesto varch
ar(30),direccion varchar(30),localidad varchar(20),estado varchar(20),codigo_pos
tal integer,telefono integer, fecha_de_nacimiento date, fecha_de_contratacion da
te, codigo_empleado integer Not Null Primary Key);

Tabla creada.

SQL> create table pedidos(fecha_pedido date,fecha_de_envio date,ruta_de_envio va
rchar(100),codigo_clientes integer,fecha_objetivo date, pedido_id integer Primar
y Key, transportado_por integer,atendido_por integer);

Tabla creada.

SQL> create table cliente(nombre varchar(20), apellido varchar(20),direccion var
char(50),localidad varchar(20),region varchar(20),codigo_postal integer, pais va
rchar(30),telefono integer,codigo_cliente integer primary key)
  2  ;

Tabla creada.

SQL> create table detalles_del_pedido(precio_unitario decimal(10,2),cantidad int
eger,descuento decimal(5,2),detalle_id integer primary key,pedido_id integer);

Tabla creada.

SQL> alter table productos add(foreign key(categoria)references categorias(nombr
e_categoria));

Tabla modificada.

SQL> alter table productos add(foreign key(proveedor)references proveedores(codi
go_proveedor));

Tabla modificada.

SQL> alter table detalles_del_pedido add(producto_id integer);

Tabla modificada.

SQL> alter table detalles_del_pedido add(foreign key(producto_id)references prod
uctos(codigo_producto));

Tabla modificada.

SQL> alter table detalles_del_pedido add(foreign key(pedido_id)references pedido
s(pedido_id));

Tabla modificada.

SQL> alter table pedidos add(foreign key(transportado_por)references transportis
tas(codigo_transportista))
  2  ;

Tabla modificada.

SQL> alter table pedidos add(foreign key(codigo_clientes)references cliente(codi
go_cliente))
  2  ;

Tabla modificada.

SQL> alter table pedidos add(foreign key(atendido_por)references empleados(codig
o_empleado));

Tabla modificada.

viernes, 6 de septiembre de 2013

Diccionario de datos

Campo
Entidad
Tipo de dato
Llave
Descripción
Código_pintor
Pintor
Integer
PK - llave principal
Numero único que le imponemos a cada pintor
Nombre_pintor
Pintor
Varchar(35)

Arreglo de caracteres en donde se almacenara el nombre del pintor con un máximo de 35 caracteres
Código_cuadro
Cuadro
Integer
PK - llave principal
Código con el cual identificaremos cada cuadro
Titulo_del_cuadro
Cuadro
Varchar(80)

Nombre del cuadro con un máximo de 80 caracteres
Código_pintor
cuadro
Integer
FK- llave foránea a la entidad pintor
Apuntador en el cual pondremos el código asignado a cada pintor.

martes, 27 de agosto de 2013