PostgreSQL - PLPGSQL

download PostgreSQL - PLPGSQL

of 16

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