PostgreSQL - PLPGSQL
-
Upload
raul-bazoalto-r -
Category
Documents
-
view
233 -
download
0
Transcript of PostgreSQL - PLPGSQL
-
8/17/2019 PostgreSQL - PLPGSQL
1/16
PostgreSQLPLPGSQL
-
8/17/2019 PostgreSQL - PLPGSQL
2/16
Un Paréntesis (Secuencias)
• Corresponde a un valor auto incrementable.
• Por ejemplo se desea que la columna “codigo” incremente su
valor en uno cada vez que se introduzca un nuevo registro en
cliente.
-
8/17/2019 PostgreSQL - PLPGSQL
3/16
Un Paréntesis (Secuencias)
• Lo que se debe de hacer es crear una secuencia (para este
caso inicia en uno y se incrementa también en uno
• Al momento de insertar una fila en dicha tabla, colocar
• Tomar en cuenta que nextval es una función que incrementa el
valor de la secuencia y lo devuelve.
• La función currval devuelve el valor actual de la secuencia
-
8/17/2019 PostgreSQL - PLPGSQL
4/16
Introducción
• Lenguaje provisto por el RDBMS PostgreSQL.
• Según la documentación tiene las siguientes características:
• Puede ser usado para crear funciones o procedimientos.
• Adiciona estructuras de control al lenguaje SQL.
• Ejecuta operaciones complejas de calculo.
• Permite herencia.
• Lenguaje de confianza.
• Fácil de usar.
-
8/17/2019 PostgreSQL - PLPGSQL
5/16
Función Básica
• Se desarrolla una función que devuelve un número entero.
• Para llamar a dicha función usar
• Se obtiene la salida
-
8/17/2019 PostgreSQL - PLPGSQL
6/16
Función Básica
• Se desarrolla una función que devuelve un varchar.
• OBSERVE: No es necesario especificar la longitud del varchar.
-
8/17/2019 PostgreSQL - PLPGSQL
7/16
Función Básica
• Se desarrolla una función que devuelve la fecha del sistema
• OBSERVE: Si se desea obtener la hora del sistema use
current_time.
-
8/17/2019 PostgreSQL - PLPGSQL
8/16
Función con Datos de Entradas
• Sumar dos números
-
8/17/2019 PostgreSQL - PLPGSQL
9/16
Función con Datos de Entradas
• Reto: Crear una función que pase dos números (a,b) y genere
como resultado el texto:
• si (a>b) => “A es mayor que B”
• si (a “A es menor que B”
• si (a=b) => “Los números A y B son iguales.”
• Las respuestas deben mostrar los números, aquí piense en
conversiones.
• IF se utiliza
• IF ... THEN ... END IF;
• IF ... THEN ... ELSE…END IF;
• IF ... THEN ... ELSIF ... THEN ... ELSE…END IF;
-
8/17/2019 PostgreSQL - PLPGSQL
10/16
Función con Datos de Entradas
-
8/17/2019 PostgreSQL - PLPGSQL
11/16
Retornando la Tabla Cliente
• Se desea retornar todos los valores de la tabla cliente
• Si se desea llamar a dicha función:
-
8/17/2019 PostgreSQL - PLPGSQL
12/16
Retornando la Tabla Cliente
• Se realiza el retorno de todo la tabla pero de diferente
manera.
-
8/17/2019 PostgreSQL - PLPGSQL
13/16
Retornando las Filas Que
Coincidan con Algún nombre
Forma 1
Forma 2
-
8/17/2019 PostgreSQL - PLPGSQL
14/16
Registrar una Nueva Instalación
• Se desea generar una nueva instalación (subcripción) de un
cliente.
• ¿Qué parámetros de entrada debe tener?
• CI del cliente.
• Nombre del paquete.
• Dirección donde se instalara la instalación.
• Número de TVs.
-
8/17/2019 PostgreSQL - PLPGSQL
15/16
Registrar una Nueva Instalación
• Se muestra la parte de la declaración
-
8/17/2019 PostgreSQL - PLPGSQL
16/16
Registrar una Nueva Instalación
Cuerpo