Los triggers son disparadores, se les llama asi por su forma de actuar, un ejemplo claro son los cajeros automaticos, donde al retirar el dinero, recien es descontado del sistema la suma sacada, cuando se corta la luz antes de que el dinero sea retirado, el cajero no descuenta el dinero, con esto podemos generar multiples de acciones necesarias dentro de las bases de datos. Ahora veremos como se sentencian:
CREATE [OR REPLACE] TRIGGER nombreTrigger
momentoEjecución evento [evento] ON nombreTabla
bloque PLSQL;
A nivel de un registro podemos verlo de la siguiente manera:
CREATE [OR REPLACE] TRIGGER nombreTrigger
momentoEjecución evento [evento] ON nombreTabla
[REFERENCING OLD AS old | NEW AS new]
FOR EACH ROW
[WHEN condición]
bloque PLSQL;
En "momentoEjecucion" indicara cuando se ejecutara el triggers, puede ir BEFORE o AFTER
En "evento" puede ir, UPDATE, INSERT o DELETE.
en "old" indicara el valor antiguo que se maneja, mientras que "new" sera el nuevo valor que ahora obtendria despues de ser ejecutado el triggers.
WHEN, como en las sentencias anteriores, es quien dara las restricciones creadas anterior mente por nosotros mismos
mientras que FOR EACH ROW nos indica que el triggers es a nivel de registro.
Para eliminar el trigger:
DROP TRIGGER nombreTrigger
FUNCIONES PLSQL
miércoles, 11 de abril de 2012
La funcion podemos decir que es casi lo mismo que de un procedimiento, solo que devuelve un valor al retornar y este valor puede ser llamada como parte de una parte de alguna exprecion.
Para ser uso de una funcion:
CREATE [OR REPLACE] FUNCTION nombreFunción
[nombreParámetro modo tipodatosParametro ]
RETURN tipodatosRetorno IS | AS
bloque de código
en MODO, podemos ocupar las mismas caracteristicas que los procedimientos.
Para eliminar una funcion:
DROP FUNCTION nombreFuncion
Para ser uso de una funcion:
CREATE [OR REPLACE] FUNCTION nombreFunción
[nombreParámetro modo tipodatosParametro ]
RETURN tipodatosRetorno IS | AS
bloque de código
en MODO, podemos ocupar las mismas caracteristicas que los procedimientos.
Para eliminar una funcion:
DROP FUNCTION nombreFuncion
USAR UN PROCEDIMIENTO
Para poder llamarlo en un bloque anonimo hacemos lo siguiente:
DECLARE
nombreParametro tipoParametro;
BEGIN
nombreParametro tipoParametro := Valor;
nombreProcedimiento (nombreParametro => nombreParametro);
END;
DECLARE
nombreParametro tipoParametro;
BEGIN
nombreParametro tipoParametro := Valor;
nombreProcedimiento (nombreParametro => nombreParametro);
END;
CREAR SUB PROGRAMAS PLSQL
los Sub Programas son aquellos que se almacenan dentro de nuestra base de datos podemos reutilizarlos en distintos sub programas, existen de dos tipos, los de tipo procedimiento y funciones.
PROCEDURE y FUNCTION
la sintaxis es:
CREATE [OR REPLACE] PROCEDURE nombreDelProcedimiento
[parametros modo tipodedatos]
IS | AS
Bloque de codigo
EN MODO puede ir IN, OUT, IN OUT, si no colocamos estos valores, es automaticamente IN, esto quiere decir que es de tipo de entrada y no se puede modificar.
Cuando usamos el tipo OUT es que entregara valores de salidas, cuando es del tipo IN OUT significa que debe ingresar un valor este valor se modificara o realizara lo que el procedimiento tenga y luego enviara el valor determinado.
Si quisieramos eliminar el procedimiento, solo debemos colocar:
DOP PROCEDURE nombreProcedimiento
PROCEDURE y FUNCTION
la sintaxis es:
CREATE [OR REPLACE] PROCEDURE nombreDelProcedimiento
[parametros modo tipodedatos]
IS | AS
Bloque de codigo
EN MODO puede ir IN, OUT, IN OUT, si no colocamos estos valores, es automaticamente IN, esto quiere decir que es de tipo de entrada y no se puede modificar.
Cuando usamos el tipo OUT es que entregara valores de salidas, cuando es del tipo IN OUT significa que debe ingresar un valor este valor se modificara o realizara lo que el procedimiento tenga y luego enviara el valor determinado.
Si quisieramos eliminar el procedimiento, solo debemos colocar:
DOP PROCEDURE nombreProcedimiento
Bloques Anonimos
Son bloques que no tienen mucha relevancia, por lo general comienzan con "begin" y terminan con "end;" podemos decir que es una sentencia básica, donde podemos hacer algo básico, podemos hacer pruebas de salidas como la siguiente:
BEGIN
DBMS_OUTPUT.PUT_LINE ('HOLA MUNDO');
END;
BLOQUE PLSQL
Los bloques son como estan estructurado la sentencia PLSQL, podemos ver que esta la zona de declaraciones, la zona de instrucciones y la zona de tratamiento, la cual desglozaremos en lo siguiente:
DECALRE IS/AS
aquí declaramos las variables.
BEGIN
Instrucciones que le damos, que queremos hacer.
EXEPTION
Aquí podemos determinar las cosas que sabemos que pasaran, podemos tener una referencia clara cuando el sistema por ejemplo tenga una divicion por 0, podemos dar una excepción diciéndole que envié un mensaje pero que no cierre la aplicación.
END;
toda sentencia debe ser cerrada de esta manera.
DECALRE IS/AS
aquí declaramos las variables.
BEGIN
Instrucciones que le damos, que queremos hacer.
EXEPTION
Aquí podemos determinar las cosas que sabemos que pasaran, podemos tener una referencia clara cuando el sistema por ejemplo tenga una divicion por 0, podemos dar una excepción diciéndole que envié un mensaje pero que no cierre la aplicación.
END;
toda sentencia debe ser cerrada de esta manera.
Constantes PLSQL
Que son las constantes, las constantes son variables que no se pueden modificar, es decir se inician inicialmente (valga la redundancia) de una manera y se mantienen de esa forma hasta su finalidad, con esto podemos crear variables como de tipo financieros que son modificadas por mes, semestres, y años.
como se crean:
iva2009 constant number (2,2) := 19
PLSQL ROWTYPE
Rowtype, podemos ocuparlo principalmente para identificar una variable con caracteristicas de otra ya existente, puede estar definida en otra tabla pero siempre dentro de las misma base de datos.
Pueden existir el tipo NOT NULL, con esto no se heredan los valores iniciales.
ejemplo:
numerEmpleado empleadoNumero%rowtype
PLSQL VARIABLES
depNumero NUMBER(2) NOT NULL :=20
se declara depNumero como una variable de tipo numero con una longitud de 2 espacios dentro de memoria, que pasaria si nosotros creamos una variable con longitud de 10 espacios y solo ingresaremos un largo de 3, estamos ocupando espacio de mas, es decir se rellenan esos espacios dependiendo de las caracteristicas, estariamos creando una redundancia, haciendo que la base de datos este perdiendo espacios necesarios para otras necesidades.
nom_emple VARCHAR2(15) DEFAULT ‘Pedro’
cuando lo creamos por default, estamos haciendo que la ariable, este inicializada siempre con el nombre que se este creando, ademas los varchar2 aceptan caracteres especiales siempre que esten en comillas simples, en este caso le estamos dando una inicializacion de 15 espacios. recordar que podemos ocupar menos variables si es necesario.
Diskpart
diskpart: seleccionamos la aplicacion
vemos los discos dentro de nuestro HW con las particiones
select volume n
seleccionamos el disco y/o la particion
seleccionamos el disco y/o la particion
clean
limpiamos el disco, no formateamos.
limpiamos el disco, no formateamos.
create partition primary
creamos la particion, no se formatea.
creamos la particion, no se formatea.
select partition n
seleccionamos la particion primaria de nuestro disco, y que deceamos hacer con ella
seleccionamos la particion primaria de nuestro disco, y que deceamos hacer con ella
active
activamos la unidad.
activamos la unidad.
format fs-fat32
formateamos el disco en esta version fat-32
formateamos el disco en esta version fat-32
assign
asignamos el volumen al disco
exit
exit
Estudio...
martes, 10 de abril de 2012
Las razones por las cuales estamos estudiando, es conseguir algo que necesitamos cubrir con la falta de alguna necesidad, ahora cada uno sabe cual es ese es el punto, debemos averiguar donde esta nuestra deficiencia para comprender de las necesidades en su totalidad, en fin, creo que seguiré en la clase, estudiando, open source, lo mas fome es que tan pasando Scripts en bash, el profe programa para el y era xD, a seguir averiguando sobre el temita, saludos.
Suscribirse a:
Entradas (Atom)