domingo, 14 de diciembre de 2014

Crear un usuario



1-      Crear un usuario para todas las bases de datos y sus tablas, con permiso de “otorgar permisos” (localhost).

                  create user Cristian@localhost
                  identified by 'ases';
                  grant all
                  on  *.*
                  to Cristian@localhost
                  with grant option;


2-      Crear un usuario  con permisos de lectura para las tablas “clients y empleados” de la base de datos “examen” (localhost).


      create user David@localhost
      identified by 'ases';
      grant select
      on examen.clientes
      to David@localhost;

      grant select
      on examen.empleados
      to David@localhost;



3-      Crear un usuario con permisos de lectura para todas las tablas de “examen”” con acceso desde un rango de IPs.

            create user Sergio@'192.168.1.%'
            identified by 'ases';
            grant select
            on examen.*
            to Sergio@'192.168.1.%';

4-      Crear un usuario con permisos de inserción, borrado y actualización; esta ultima solo los campos “fecha entrega y comentarios” de la tabla pedidos para localhost.

      create user Sebas@localhost
      identified by 'ases';
      grant insert, delete
      on examen.*
      to Sebas@localhost;

      grant update (FechaEntrega,Comentarios)
      on examen.pedidos
      to Sebas@localhost;

5-      Crear un usuario con permisos de “create, drop y alter” sobre la tabla examen y con acceso desde una sola IP.

      create user Jose@'192.168.1.73'
      identified by 'ases';
      grant create,drop,alter
      on examen.*
      to Jose@'192.168.1.73';

lunes, 3 de noviembre de 2014

Una de Triggers


Crear un trigger sobre la tabla productos, para que antes de insertar un
producto, comprueba que el precio unitario del producto insertado no sea
ni negativo ni superior a 1000.  (use sentencia condicional)

delimiter $$
create trigger precio_Venta before insert  on Productos
for each row
begin
if new.PrecioVenta <0  then
set new.PrecioVenta=0;
elseif new.PrecioVenta >1000 then
set new.PrecioVenta=1000;
end if;
end; $$


Controlar que cuando se inserte un nuevo producto, la cantidad en stock
sea siempre 10, independientemente del valor introducido en la inserción.

delimiter $$
create trigger ejercicio_7 before insert
on productos for each row
begin
set
new.CantidadEnStock=10;
end; $$





Controlar que cuando en la tabla Pedidos se cambie el valor del campo
Estado a ‘Entregado’, la fecha de Entrega sea mayor o igual que la fecha
del pedido. En caso de no serlo obligar a que sea igual. (use sentencia
condicional).
Delimiter $$
create trigger ejercicio_8 before update
on pedidos for each row
begin
if new.Estado="Entregado" then
if new.FechaEntrega < new.FechaEntrega then
set new.FechaEntrega=new.FechaPedido;
end if;
end if;
end; $$
Añadir una columna ‘TotalLinea’ a la tabla DetallePedidos:
ALTER TABLE `jardineria`.`detallepedidos`
ADD COLUMN `totalLinea` DECIMAL(10,2) NULL DEFAULT 0 AFTER
`NumeroLinea`;
Debe controlar que cada vez que se haga cualquier operación en la tabla
DetallePedidos (INSERT, UPDATE, DELETE), y sólo cuando cambien los
valores de las columnas Cantidad y PrecioUnidad se actualice el campo
nuevo TotalLinea y sea igual a Cantidad * PrecioUnidad.
Update
delimiter $$
create trigger ejercicio_10 before update
on detallepedidos for each row
begin

if new.Cantidad<>old.Cantidad ||
new.PrecioUnidad<>old.PrecioUnidad then
set new.totallinea=new.Cantidad * new.PrecioUnidad;

end if    end; $$
Insert
delimiter $$
create trigger ejercicio_10_insertar before insert
on detallepedidos for each row
begin
if new.Cantidad>0 ||
new.PrecioUnidad>0 then
set new.totallinea=new.Cantidad * new.PrecioUnidad;
end if;
end; $$
delete


Se desea almacenar en una tabla la deuda que tiene cada cliente con la
empresa. Tenga en cuenta las siguientes consideraciones:
a. La tabla Pagos almacena los pagos YA realizados.
b. Los pedidos en estado Entregado son los que se tienen en
cuenta cuando quiere calcularse la deuda contraída.

create TABLE Deuda
 ( CodigoCliente int(11) not null,pendiente_de_pago decimal(10.2),
Primary Key (CodigoCliente));

alter TABLE Deuda
add constraint deuda1
foreign key (CodigoCliente)
references clientes(CodigoCliente)
on delete restrict
on update cascade;

delimiter $$

create trigger ejercicio_11 after update on pedidos
for each row

begin
declare importe decimal (10.2);

if new.Estado="Entregado" then

select sum(Cantidad * PrecioUnidad)
into importe
from detallepedidos
where CodigoPedido=new.CodigoPedido;

update deuda

set pendiente_de_pago=pendiente_de_pago + importe

where CodigoCliente=new.CodigoCliente;

end if;

end; $$

jueves, 16 de octubre de 2014

Ejercicios de SubNetting



1.Su red utiliza la dirección IP 172.30.0.0/16. Inicialmente existen  25 subredes
Con un mínimo de 1000 hosts por subred. Se proyecta un crecimiento en los próximos años de un total de 55 subredes.
¿Qué mascara de subred se debera utilizar?
 Respuesta: C
IP= 172.30.0.0/16    (Clase B)                   00000000    00000000

                                                                    Subnetting= 26-2=64-2=>62 subredes
Mascara de subred:255.255.252.0

2. Usted planea la migración de 100 ordenadores de IPX/SPX a TCP/IP y que puedan establecer conectividad con Internet. Su  ISP le ha asignado la dirección IP 192.168.16.0/24. Se requieren 10 Subredes con  10 hosts cada una. ¿Que mascara de subred debe utilizarse?
    Respuesta: C
IP= 192.168.16.0/24                 (Clase C)                   00000000   
                                                                    Subnetting= 24-2=16-2=>14 subredes
Mascara de subred:255.255.255.240
3.Una red esta dividida en 8 subredes de una clase B. ¿Que mascara de subred se deberá utilizar si se pretende tener 2500 host por subred.
Respuesta: B
 (Clase B)                   00000000 00000000   
                                                                    Subnetting= 212-2=4096-2=>4094 hosts
Mascara de subred:255.255.240.0
4. ¿cuáles de las siguientes subredes no pertenece a la misma red si se ha utilizado la máscara de subred  255.255.224.0?                           Respuesta: i    (172.16.32.0)
f..66.24  => 01000010.00011000
                     11100000.00000000
                     01000000.00000000 = 172.16.64.0

g..65.33 => 01000001.00100001
                    11100000.00000000
                     01000000.00000000 =172.16.64.0


h.64.42=> 01000000.00101010
                   11100000.00000000
                     01000000.00000000 =172.16.64.0

i. 63.51=>00111111.00110011
                   11100000.00000000
                     01100000.00000000 = 172.16.32.0
5. ¿Cuáles de los siguientes son direccionamientos validos clase B?
a. 10011001.01111000.01101101.11111000 =>153.120.109.248
b. 01011001.11001010.11100001.01100111=>89.202.225.103
c. 10111001.11001000.00110111.01001100=>185.456.55.76
d. 11011001.01001010.01101001.00110011=>217.74.105.51
e. 10011111.01001011.00111111.00101011=>159.75.63.43
6. Convierta  191.168.10.11 a binario
Respuesta: f) 10111111.10101001.00001010.00001011
191=>10111111
168=>10101000
10=>00001010
11=>00001011
7. Se tiene una dirección IP 172.17.111.0 mascara 255.255.254.0, ¿cuántas subredes y cuantos host  validos habrá por subred?    RESPUESTA: C (126 subnets with each 510 hosts)
a. 126 subnets with each 512 hosts
b. 128 subnets with each 510 hosts

c. 126 subnets with each 510 hosts=> 00000000  00000000
                                                                   27-2=>128-2=>126        29-2=>512-2=>510
d. 126 subnets with each 1022 hosts
8. Convierta  00001010.10101001.00001011.10001011 a decimal?
 a. 192.169.13.159
b. 10.169.11.139 respuesta correcta
c. 10.169.11.141
d. 192.137.9.149

9. Usted esta  designando un direccionamiento IP para cuatro subredes con la red 10.1.1.0, se prevé un crecimiento de una red por año en los próximos cuatro años. ¿Cuál será la mascara que permita la mayor cantidad de host?
a. 255.0.0.0
b. 255.254.0.0
c. 255.240.0.0 respuesta correcta un total de 16 subredes(24-2) y 1048576(220-2) hots
d. 255.255.255.0
10. A partir de la dirección IP 172.18.71.2   255.255.248.0, ¿cual es la dirección de subred y de broadcast a la que pertenece el host?
a. network ID = 172.18.64.0, broadcast address is 172.18.80.255
b. network ID = 172.18.32.0, broadcast address is 172.18.71.255
c. network ID = 172.18.32.0, broadcast address is 172.18.80.255
d. network ID = 172.18.64.0, broadcast address is 172.18.71.255
subredes25-2=30   hosts211-2=2046  saltos de 8x255=2040
172.18.0.0  a  172.18.7.255
172.18.8.0  a  172.18.15.255
172.18.16.0  a  172.18.23.255
172.18.24.0  a  172.18.31.255
172.18.32.0  a  172.18.39.255
172.18.40.0  a  172.18.47.255
172.18.48.0  a  172.18.55.255
172.18.56.0  a  172.18.63.255
172.18.64.0  a  172.18.71.255
172.18.72.0  a  172.18.79.255
11. Una red clase B será dividida en 20 subredes a las que se sumaran 30 más en los próximos años ¿que mascara se deberá utilizar para obtener un total de 800 host por subred?

a. 255.248.0.0
b. 255.255.252.0 respuesta correcta subredes 26-2=62 y 210-2=1022 host
c. 255.255.224.0
d. 255.255.248.0
12. Una red clase B será dividida en 20 subredes a las que se sumaran 4 más en los próximos años ¿que mascara se deberá utilizar para obtener un total de 2000 host por subred?
a. /19
b. /21 correcta subredes 25-2=30  y 210-2= 1022 host
c. /22
d. /24
13. A partir de la dirección IP 192.168.85.129 255.255.255.192, ¿cual es la dirección de subred y de broadcast a la que pertece el host?
a. network ID = 192.168.85.128, broadcast address is 192.168.85.255
b. network ID = 192.168.84.0, broadcast address is 192.168.92.255
c. network ID = 192.168.85.129, broadcast address is 192.168.85.224
d. network ID = 192.168.85.128, broadcast address is 192.168.85.191 correcta---  subred 22-2=2    hosts66-2=62 

192.168.85.0        a   192.168.85.63      
192.168.85.64      a  192.168.85.127  
 192.168.85.128  a   192.168.85.191   
192.168.85.192   a   192.168.85.255      

14.
Una red clase C 192.168.1.0 255.255.255.252, esta dividida en subredes ¿cuantas subredes y cuantos host por subred tendra cada una?
a. 62 subnets with each 2 hosts  correcta 26-2=62 subredes y 22-2=2 host
b. 126 subnets with each 4 hosts
c. 126 subnets with each 6 hosts
d. 30 subnets with each 6 hosts
e. 2 subnets with each 62 hosts
15. Usted tiene una IP 156.233.42.56 con una mascara de subred de 7 bits. ¿Cuántos host y cuantas subredes son posibles?
a.126 subnets and 510 hosts respuesta correcta 27-2=126 subredes  y 29-2=510 hosts
b. 128 subnets and 512 hosts
c. 510 hosts and 126 subnets
d. 512 hosts and 128 subnets