miércoles, 6 de noviembre de 2013

lunes, 4 de noviembre de 2013

practica1 SQL SERVER

creación de la base de datos

creación de tabla

inserción de elementos
consultas
funciones agregadas
modificaciones
vistas


viernes, 25 de octubre de 2013

DICCIONARIO DE DATOS DEL PROYECTO



Empleados


Campo
Tipo
Llave
Descripción
ID_empleado
Integer
Llave primaria
Es la llave primaria de la tabla empleados
Nombre_emp
Varchar(30)

Es el campo para colocar el nombre del empleado
Domicilio_emp
Varchar(40)

Es el campo para colocar el domicilio del empleado
puesto
Varchar(30)

Es el campo para colocar el puesto del empleado
teléfono
Integer

Es el campo para colocar el teléfono del empleado



Clientes


Campo
Tipo
Llave
Descripción
ID_cliente
Integer
Llave primaria(Dk)
Es la llave primaria de la tabla clientes
Nombre_cl
Varchar(30)

Es el campo para colocar el nombre del cliente
Apellido_cl
Varchar(30)

Es el campo para colocar el apellido del cliente
Domicilio_cl
Varchar(40)

Es el campo para colocar el domicilio del cliente
Colonia_cl
Varchar(30)

Es el campo para colocar la colonia del cliente
Telefono
Integer

Es el campo para colocar el telefonno del cliente






Pedidos


Campo
Tipo
Llave
Descripción
Id_pedido
Integer
Llave primaria (DK)
Es la llave primaria de la tabla pedidos
Fecha_pedido
Date

Es el campo para colocar la fecha en la que fue pedido el producto
Fecha_entrega
Date

Es el campo para colocar la fecha en que va a ser entregado el producto
Nombre_cliente
Varchar(30)

Es el campo para colocar el nombre del cliente
Detalles
Varchar(50)

Es el campo para colocar detalles adicionales


Productos


Campo
Tipo
Llave
Descripcion
ID_producto
Integer
Llave primaria (DK)
Es la llave primaria de la tabla productos
Nombre_prod
Varchar(30)

Es el campo para colocar el nombre del producto
Precio_prod
Integer

Es el campo para colocar el precio del producto
Cantidad_prod
Integer

Es el campo para colocar la cantidad de productos que pidió el cliente
Material
Varchar(50)

Es el campo para colocar el materia con el cual está hecho el producto






Detalles_pedido


Campo
Tipo
Llave
Descripción
ID_ pedido
Integer
Llave primaria (DK)
Es la llave primaria de la tabla detalles_pedido
Precio_pedido
Integer

Es el campo para colocar el precio del pedido
Cantidad_pedido
Integer

Es el campo para colocar la cantidad del pedido
descuento
Integer

Es el campo para colocar el descuento del pedido


Pagos


Campo
Tipo
Llave
Descripcion
ID_pago
Integer
Llave primaria (DK)
Es la llave primaria de la tabla pagos
Forma_pago
Varchar(30)

Es el campo para colocar la forma de pago


Personalización


Campo
Tipo
Llave
Descripcion
ID_personalizacion
Integer
Llave primaria
Es la llave primaria de la tabla personalización
Tipo_personalizacion
Varchar(30)

Es el campo para colocar el tipo de personalización que se le va  a hacer al producto
color
Varchar(30)

Es el campo para colocar el color del producto
Otros_detalles
Varchar(60)

Es e campo para colocar otros detalles adicionales





Servicio


Campo
Tipo
Llave
Descripción
ID_servicio
Integer
Llave primaria (DK)
Es la llave primaria de la tabla servicio
Tipo
Varchar(30)

Es el campo para colocar el tipo de servicio
Precio
Integer

Es el campo para colocar el precio del servicio

miércoles, 23 de octubre de 2013

diagrama entidad relación(proyecto)



En este diagrama entidad relación se muestra los elementos que son necesarios para un giro comercial llamado ETS (Elemento de Transporte Sustentable).

ENTREVISTA PARA LA CREACION DE LA BASE DE DATOS


ANEXO LA ENTREVISTA REALIZADA EN EQUIPO PARA LA CREACIÓN DE LA BASE DE DATOS PARA LA EMPRESA  ETS CICLOS


http://sdrv.ms/17fYKjt


jueves, 17 de octubre de 2013

VISTAS

VISTAS
Las vistas se pueden definir como tablas virtuales basadas en una o más tablas o vistas y cuyos contenidos vienen definidos por una consulta sobre las mismas. Esta tabla virtual o consulta se le asigna un nombre y se almacena permanentemente en la BD, generando al igual que en las tablas una entrada en el diccionario de datos. Las vistas permiten que diferentes usuarios vean la BD desde diferentes perspectivas, así como restringir el acceso a los datos de modo que diferentes usuarios accedan sólo aciertas filas o columnas de una tabla. Desde el punto de vista del usuario, la vista es como una tabla real con filas y columnas, pero a diferencia de esta, sus datos no se almacenan físicamente en la BD. Las filas y columnas de datos visibles a través de la vista son los resultados producidos por la consulta que define la vista.

 CREACION DE VISTAS:

La cláusula CREATE VIEW permite la creación de vistas. La cláusula asigna un nombre a la vista y permite especificar la consulta que la define. Su sintaxis es: CREATE VIEW id vista [(columna,…)]AS especificación consulta; Opcionalmente se puede asignar un nombre a cada columna de la vista. Si se especifica, la lista de nombres de las columnas debe de tener el mismo número de elementos que el número de columnas producidas por la consulta. Si se omiten, cada columna de la vista adopta el nombre de la columna correspondiente en la consulta. Existen dos casos en losque es obligatoria la especificación de la lista de columnas:
1 – Cuando la consulta incluye columnas calculadas
2 – Cuando la consulta produce nombres idénticos.Según el propósito con el que se organizan las vistas, pueden clasificarse en lossiguientes tipos:

 Horizontales o por Restricción

Son las que restringen el acceso de un usuario a únicamente un conjunto de filas de unatabla.
EJEMPLO: Si se desea que un director de ventas vea sólo las filas de la tabla
RVENTAS, correspondientes a los vendedores de su región, se debería de definir una vista para cada región.
 CREATE VIEW repEste AS
SELECT *
FROM RVENTAS
WHERE oficina IN (SELECT n_oficina FROM OFICINASWHERE region = ‘Este’);

Las vistas horizontales son adecuadas cuando la tabla sobre la que se definen contienedatos que relacionan a varias organizaciones o usuarios, proporcionando una “tabla privada” para cada usuario compuesta únicamente de las filas necesarias para ese usuario en concreto.
OTRO EJEMPLO:
1. Definir una vista para el empleado nº 102 que contenga solo los pedidos emitidos, por los clientes asignados al mismo.
CREATE VIEW emplCientodos AS
SELECT *
FROM PEDIDOS
WHERE clie IN (SELECT num_clie
FROM CLIENTESWHERE rep_clie = 102);

Verticales o por proyección

Son aquellas que restringen el acceso de un usuario sólo a ciertas columnas de una tabla.
EJEMPLO:
El departamento de procesamiento de pedidos necesita acceso únicamente al número de empleado, nombre y oficina asignada al mismo para procesar los pedidos. Crear una vista que muestre esta información.
CREATE VIEW infoPedidos AS
SELECT num_empl, r_oficina
FROM RVENTAS;
El uso de estas vistas es aconsejable cuando los datos de la tabla son compartidos también por varios usuarios diferentes. La diferencia está en que ahora solo necesitamos parte de los campos, no todos.

SQL> CREATE VIEW UnidadesPorPedido
  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 Categorias
2 As Select nombre_categoria,descripcion_categoria
3 From Categorias
4 where Id_categoria>1;
Vista creada.
SQL> CREATE VIEW empleado
2 As Select nombre_empleado,apellido_empleado,puesto_empleado
3 From Empleado
4 Where Id_empleado<3;
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.
SQL> CREATE VIEW Pedidos
2 As Select nombre_destinatario,pais_destino
3 From Pedidos
4 Where Id_pedido>0;

Vista creada.