fbpx
Wikipedia

PL/PgSQL

PL/pgSQL (Procedural Language/PostgreSQL Structured Query Language) es un lenguaje imperativo provisto por el gestor de base de datos PostgreSQL. Permite ejecutar comandos SQL mediante un lenguaje de sentencias imperativas y uso de funciones, dando mucho más control automático que las sentencias SQL básicas.

Desde PL/pgSQL se pueden realizar cálculos complejos y crear nuevos tipos de datos de usuario. Como un verdadero lenguaje de programación, dispone de estructuras de control repetitivas y condicionales, además de la posibilidad de creación de funciones que pueden ser llamadas en sentencias SQL normales o ejecutadas en eventos de tipo disparador (trigger).

Una de las principales ventajas de ejecutar programación en el servidor de base de datos es que las consultas y el resultado no tienen que ser transportadas entre el cliente y el servidor, ya que los datos residen en el propio servidor. Además, el gestor de base de datos puede planificar optimizaciones en la ejecución de la búsqueda y actualización de datos.

Las funciones escritas en PL/pgSQL aceptan argumentos y pueden devolver valores de tipo básico o de tipo complejo (por ejemplo, registros, vectores, conjuntos o incluso tablas), permitiéndose tipificación polimórfica para funciones abstractas o genéricas (referencia a variables de tipo objeto).

Ejemplo de código PL/pgSQL

CREATE OR REPLACE FUNCTION llamada_no_interesa(integer) RETURNS integer AS ' DECLARE _llamada_id ALIAS FOR $1; _contacto_id integer; BEGIN -- buscar el contacto relacionado SELECT _contacto_id INTO _contacto_id FROM llamadas WHERE id = _llamada_id; -- actualizar atendida en llamadas UPDATE llamadas SET atendida = true WHERE id = _llamada_id; -- actualizar no_interesa en contactos UPDATE contactos SET no_interesado = true WHERE id = _contacto_id; RETURN _contacto_id; END; ' 

Enlaces externos

  • PL/pgSQL en el manual de PostgreSQL (en inglés)
  •   Datos: Q2044345

pgsql, pgsql, procedural, language, postgresql, structured, query, language, lenguaje, imperativo, provisto, gestor, base, datos, postgresql, permite, ejecutar, comandos, mediante, lenguaje, sentencias, imperativas, funciones, dando, mucho, más, control, autom. PL pgSQL Procedural Language PostgreSQL Structured Query Language es un lenguaje imperativo provisto por el gestor de base de datos PostgreSQL Permite ejecutar comandos SQL mediante un lenguaje de sentencias imperativas y uso de funciones dando mucho mas control automatico que las sentencias SQL basicas Desde PL pgSQL se pueden realizar calculos complejos y crear nuevos tipos de datos de usuario Como un verdadero lenguaje de programacion dispone de estructuras de control repetitivas y condicionales ademas de la posibilidad de creacion de funciones que pueden ser llamadas en sentencias SQL normales o ejecutadas en eventos de tipo disparador trigger Una de las principales ventajas de ejecutar programacion en el servidor de base de datos es que las consultas y el resultado no tienen que ser transportadas entre el cliente y el servidor ya que los datos residen en el propio servidor Ademas el gestor de base de datos puede planificar optimizaciones en la ejecucion de la busqueda y actualizacion de datos Las funciones escritas en PL pgSQL aceptan argumentos y pueden devolver valores de tipo basico o de tipo complejo por ejemplo registros vectores conjuntos o incluso tablas permitiendose tipificacion polimorfica para funciones abstractas o genericas referencia a variables de tipo objeto Ejemplo de codigo PL pgSQL EditarCREATE OR REPLACE FUNCTION llamada no interesa integer RETURNS integer AS DECLARE llamada id ALIAS FOR 1 contacto id integer BEGIN buscar el contacto relacionado SELECT contacto id INTO contacto id FROM llamadas WHERE id llamada id actualizar atendida en llamadas UPDATE llamadas SET atendida true WHERE id llamada id actualizar no interesa en contactos UPDATE contactos SET no interesado true WHERE id contacto id RETURN contacto id END Enlaces externos EditarPL pgSQL en el manual de PostgreSQL en ingles Datos Q2044345 Obtenido de https es wikipedia org w index php title PL PgSQL amp oldid 120945477, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos