martes, 3 de septiembre de 2013

Comandos para trabajar en consola de Linux...

  1. cat: Muestra el contenido del fichero completo, sales con ctrl+z
  2. Cd: Te regresa a la carpeta donde raiz
  3. Clear: Limpiar la termina
  4. Free: Recursos de memoria libre
  5. Date: Fecha y hora del día
  6. Cal(año): Muestra el calendario del año que tu desees
  7. Pwd: Muestra el directorio actual de trabajo
  8. ls: Muestra el contenido del directorio actual. Por defecto los archivos ocultos no se muestran
  9. -r (recursivo): Muestra las carpetas principales y el contenido de cada una de ellas.
  10. Mkdir: crear directorio (puedes crear varias carpetas si están en el mismo nivel, por ejemplo: "Mkdir Linux Ubuntu' separando por espacios los nombres de las carpetas )
  11. Cd.. : Te regresa a la carpeta anterior de trabajo
  12. rmdir: Borra directorios, NOTA: Solo cuando el directorio este vacío
  13.  touch: Permite crear un fichero (archivo) vacío
  14.  ee: Es un editor de texto muy rudimentario pero al mismo tiempo efectivo. Podemos editar el archivo anterior (touch) y escribir una frase. Presionando ESC el usuario puede salir al menú principal y guardar el fichero
  15. rm - rf nombreArchivo: Borra todo el directorio sin importar que tenga algo dentro.
  16. less: Te muestra el contenido de un fichero por partes y te deja desplazarte dentro de el.
  17. more: Muestra el contenido del fichero por porcentaje
  18. head -n5 nombreArchivo: te muestra las líneas elegidas (-n5) del principio de un archivo
  19. tail -n1 nombreArchivo: Muestra el número de líneas indicadas al final del archivo
  20. grep: nos permite buscar dentro de los archivos, por líneas que concuerden con un patron.

TIPOS DE PERMISOS
W--> Escritura
R--> Lectura
X-->Ejecución

+ para agregar un permiso a un archivo : +W (por ejemplo de escritura) 

Y cuando me preguntan que es un SO...

¿Qué es un sistema operativo?

  • Programa que actúa como intermediario ente el computador y el usuario.
  • Administrador de los recursos
  • Extiende y enmascara la funcionalidad del harware.
  • Es el único programa que se ejecuta siempre(por debajo y anterior a otros programas)
Problemas que resuelve un SO
  • Administra recursos
  • Sabe cuando debe iniciar un proceso

El sistema de computo se compone de :
  • Usuario
  • Programas de aplicación
  • Sistema operativo
  • Hardware
Componentes del SO
  • Gestores de : Memoria, procesos, E/S, almacenamiento secundario
  • Servidor de : Ficheros, protección y seguridad de comunicaciones por red
  • Utilidades: Interprete de mandatos 

sábado, 10 de agosto de 2013

Vistas en base de datos...



• Una vista es una tabla derivada de otras tablas (básicas o virtuales).



• Una vista se caracteriza porque: 

– Se considera que forma parte del esquema externo.
– Una vista es una tabla virtual (no tiene una correspondencia a 
nivel físico)
– Se puede consultar como cualquier tabla básica.
– Las actualizaciones se transfieren a la/s tabla/s original/es 
(con ciertas limitaciones).


La sintaxis para la creación de vistas en SQL es la siguiente:
CREATE | REPLACE VIEW vista [(comalista_columna)]

AS expresión_tabla [with check option]

En donde:
– CREATE VIEW es la orden que permite la creación de la vista.
– vista es el nombre de la tabla virtual que se va a crear.
– (comalista_columna) son los nombres de los atributos de la tabla y es opcional:
• Si no se especifica, el nombre coincide con el nombre de los atributos 
resultantes en expresión_tabla.
• Es obligatorio si algún atributo de expresión_tabla es el resultado de una 

función de agregación o una operación aritmética.

expresión_tabla es una consulta SQL cuyo resultado será el contenido de la vista.
– WITH CHECK OPTION es opcional y se debe incluir si se desea actualizar la 
vista de una manera íntegra.


  • Para la eliminación de una vista se utiliza la instrucción:


      DROP VIEW
nombredelavista


  • Para la creacion de vistas y modificacion se utiliza:
    CREATE VIEW nombredelavista, ALTER VIEW nombredelavista

  • Para que te muestre la vista se utiliza la instrucción:

    SHOW CREATE VIEW nombredelavista
Para mas información de vistas visita estas ligas....
http://users.dsic.upv.es/~jorallo/docent/BDA/castella/tema2efg_4x1.pdf
http://dev.mysql.com/doc/refman/5.0/es/create-view.html

Enviar un mail desde consola de linux...




  • Instalamos los servicios necesarios para enviar el correo con esta linea de codigo:

sudo apt-get install mailutils ssmtp


  • Entramos a el documento de configuracion  con esta linea:

sudo nano /etc/ssmtp/ssmtp.conf


  • Buscamos en el documento donde diga ROOT, AUTHUSER etc, etc. Cambiamos dicha información por tu correo(AuthUser: tu correo), Tu contrasena (Password: tu contraseña)...

  • Para enviar el correo se utiliza esta linea de código:
echo "El mensaje a enviar" | mail -s "Asunto" correodestinatario@example.com 

Triggers...

Un disparador o trigger es un código procedimental en SQL que automáticamente es invocado por el sistema gestor al presentarse un evento determinado para la manipulacion de datos...

Características:

  • Se invoca antes o después de que un renglón/tupla de datos se ha insertado, actualizado o eliminado
  • Esta asociado a una tabla
  • Cada tabla puede tener uno o mas disparadores
  • Se puede utilizar para actualizar valores de una tabla, insertar registros o llamar a otros procedimientos...
  • Un disparador nunca se llama directamente, el disparador se ejecuta cuando el usuario intenta insertar, eliminar o modificar una fila en una tabla
Los disparadores tienen dos palabras clave, OLD y NEW que se refieren a los valores que tienen las columnas antes  y después de la modificación. Los INSERT permiten NEW, los DELETE sólo OLD y los UPDATE permiten ambas.


Y bueno aquí  miau les dejo unos ejemplos de triggers...
(Debiendo ustedes crear la base de datos con los campos necesarios para que funcione)

  • Descripción del trigger: Al borrar un fabricante de la tabla fabricantes le cambie el id=5 a la tabla articulo si este se ve afectado.
-Sintaxis-
DELIMITER//
CREATE TRIGGER delFabric AFTER DELETE ON fabricante FOR EACH ROW
BEGIN
UPDATE articulo SET fabricante=5;
WHERE fabricante OLD.codigo;
END
//
DELIMITER ;
       
NOTA: el delimiter "//" cambia dependiendo el entorno en donde crees tu base de datos en Query browser se utiliza el "//" y en Workbench se utiliza solo  " | ". Siempre hay que delimitar el trigger porque si no el dbms no sabrá donde termina dicha instrucción




  •    Cuando se agregue un artículo  nuevo si es del fabricante 5  que precio sea 10% mas el nuevo valor     capturado.
-Sintaxis-
DELIMITER //
CREATE TRIGGER insertArt BEFORE INSERT ON articulo FOR EACH ROW
BEGIN
IF(fabricante=5)
THEN SET NEW.precio=NEW.precio*1.10;
END IF ;
END ;
//
DELIMITER ;



  • Trigger que no permite cambiar el precio si es 0 y deja el precio anterior.
-Sintaxis-
DELIMITER |
CREATE TRIGGER precio BEFORE UPDATE ON articulo FOR EACH ROW
BEGIN
IF(NEW.precio=0)
THEN SET NEW.precio=OLD.precio;
ELSE SET NEW.precio=NEW.precio;
END IF ;
END
|
DELIMITER ;


  • Trigger que aumenta el precio de un producto cuando este es modificado y le sube el 10% solo si este es menor a 1000
DELIMITER |
CREATE TRIGGER iva BEFORE UPDATE ON arituculo FOR  EACH ROW
BEGIN
IF(NEW.precio<1000)
THEN SET NEW.precio=NEW.precio*1.10;
ELSE SET NEW.precio=NEW.precio;
END IF ;
END
DELIMITER ;