Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Estructura de PL/pgSQL:
El lenguaje PL/pgSQL no es sensible a las maysculas. Todas las palabras clave e
identificadores pueden usarse en cualquier mezcla de maysculas y minsculas.
Esto declara una variable de un tipo base especificado. Si la variable es declarada como CONSTANT, su valor
no podr ser cambiado. Si se especifica NOT NULL, la asignacin de un NULL producir un error en tiempo de
ejecucin. Dado que el valor por defecto de todas las variables es el valor NULL de SQL, todas las variables
declaradas como NOT NULL han de tener un valor por defecto.
name class%ROWTYPE;
Esto declara una fila con la estructura de la clase indicada. La clase ha de ser una tabla existente, o la vista de
una base de datos. Los campos de un tipo de fila heredan los tipos de datos, tamaos y precisiones de las
tablas.
Declaraciones
name RECORD;
Los registros son similares a los tipos de fila, pero no tienen una estructura predefinida. Se
emplean en selecciones y bucles FOR, para mantener una fila de la actual base de datos
en una operacin SELECT.
Postgres-basetype
variable%TYPE
class.field%TYPE
Una asignacin de una seleccin completa en un registro o fila puede hacerse del siguiente modo:
Target puede ser un registro, una variable de fila o una lista separada por comas de variables
y campo de registros o filas.
Si una fila o una lista de variables se usa como objetivo, los valores seleccionados han de
coincidir exactamente con la estructura de los objetivos o se producir un error de ejecucin.
La palabra clave FROM puede preceder a cualquier calificador vlido, agrupacin,
ordenacin, etc. que pueda pasarse a una sentencia SELECT.
Llamadas a otra funcin
Todas las funciones definidas en una base de datos Postgres
devuelven un valor. Por lo tanto, la forma normal de llamar a una
funcin es ejecutar una consulta SELECT o realizar una
asignacin (que de lugar a un SELECT interno de PL/pgSQL).
Pero hay casos en que no interesa saber los resultados de las
funciones.