Mientras utilizamos funciones o procedimientos en PostgreSQL, nos permite pasar datos de la llamada de función a los procedimientos y también, al mismo tiempo, puede recibir datos de las funciones. Esta acción o funcionalidad específica solo se realiza a través de los parámetros. En cuanto a la discusión de los parámetros con nombre, tenemos que declarar funciones. Así que ahora veremos cómo funcionan las funciones con PostgreSQL.
Funciones
Las funciones PostgreSQL también se consideran como los procedimientos. Estos se utilizan para realizar operaciones que generalmente pueden tomar varias consultas si, sin usar funciones, queremos realizar cualquier lógica. Pero al crear funciones, podemos realizar cualquier escenario en un solo procedimiento; Solo se necesita una llamada de función para iniciar la operación.
Sintaxis
Crear [o reemplazar] función name_of_function (argumentos)Descripción:
Hay dos tipos de parámetros que se pasan a través de la función.
Parámetro nombrado
Si especificamos los parámetros de una función utilizando una notación con nombre, entonces este es un parámetro con nombre, y una flecha con el valor del parámetro lo sigue.
Parámetros posicionales
Si usamos directamente los valores de los parámetros posicionales como notación posicional, entonces los parámetros deben aparecer en el mismo orden en el que se declaran. Mientras que en el caso de la notación nombrada, no es obligatorio especificar un pedido.
Implementación
Para elaborar el concepto de un parámetro nombrado, primero crearemos una función o un procedimiento en PostgreSQL. Se crea una función llamada 'l_u_case' para funcionar en las cadenas que se le envían a través de una llamada de función. Convierte las palabras en una caja superior o minúscula. Al crear la función, la característica principal son sus parámetros que contienen variables para la recepción de los datos. Entonces, en esta función, hemos creado dos variables de tipo texto para almacenar datos en ella. Y la tercera variable es un tipo booleano. Es bien sabido que el valor variable de la bandera booleana es verdadero o falso. Entonces, una variable de mayúscula se establece como falsa de forma predeterminada. Esto significa que si el usuario usa una llamada de función sin mencionar el nombre del caso, ya sea superior o inferior, entonces, por defecto, el texto se convierte en minúsculas, si también está en las letras superiores.
Crear función l_u_case (un texto, u boolean predeterminado falso)El comando select se usa aquí para seleccionar el caso utilizando la tercera variable. Si está presente la tercera variable que es booleana para mayúsculas, concatenen las cadenas presentes en las variables "A" y "B". Cada cadena se concatena con un espacio en blanco entre ellos. En la segunda opción, si no se menciona la variable booleana, el minúscula se aplica con el mismo método de concatenación. En la ejecución, se muestra el siguiente mensaje.
Ahora aplicaremos tanto el parámetro con nombre como una notación con nombre y una notación posicional.
Notación posicional
En este ejemplo, la llamada de función se realiza con los valores directamente escritos sin usar ninguna variable como argumento para la llamada de función. La llamada de función se realiza utilizando una instrucción SELECT. El nombre de una función está escrito con los parámetros.
>> seleccione l_u_case ('linux', 'sugerir', true);En la ejecución, se concatena un mayúscula de ambas cuerdas; Esto se debe a que hemos mencionado el mayúscula como un tercer parámetro.
Mientras que, si elimina el tercer parámetro, el valor resultante estará en los alfabetos en minúsculas.
>> seleccione l_u_case ('Linux', 'Sugerencia');Notación nombrada
Aquí, los valores no se asignan directamente a las variables en el parámetro, pero esas variables que usamos en las funciones también se usan en la llamada de función. Al hacer esto, todas las variables se asignarán los valores. Un valor booleano 'U' también se asigna con un valor verdadero.
>> seleccione l_u_case (a => 'linux', b => 'tintin', u => true);Además, el operador que se emitió aquí no es una señal igual. Si usa un signo igual simple o cualquier otro signo en el lugar de este operador, se forma un error de sintaxis.
En la ejecución del comando anterior, verá que la misma cadena se muestra con las letras de mayúsculas. Del mismo modo, al eliminar la notación nombrada para la mayúscula, las cadenas en minúsculas se mostrarán de forma predeterminada.
Además de la posición y la notación nombrada, hay una tercera forma, una notación 'mixta' que contiene tanto la notación de posición como la posición. Consideremos el mismo ejemplo para eso como se describe anteriormente. Mencionaremos directamente las cadenas en el parámetro en la llamada de función, mientras que a la variable booleana 'U' se le asignará el valor a través de un parámetro con nombre.
>> seleccione l_u_case ('linux', 'sugerir', u => true);No hay cambios en el resultado.
Ejemplo 2
Aquí hay otro ejemplo de una tabla llamada muestra; Utilizamos una instrucción 'Crear' para crear una función. Se intercambiarán dos valores utilizando esta función. Ambas variables se introducen en la función. Los valores dentro de estas variables, enviados a través del parámetro de función, se cambiarán.
Seleccione X, Y en Y, X;Ejecutar el comando, y verá que se crea la función. Ahora realizaremos una llamada de función simple utilizando una notación posicional. Solo usaremos los números aceptados por las variables declaradas en la función.
>> seleccionar * de la muestra (531, 902);En la ejecución, puede ver que los valores de ambas variables se intercambian. Pero esto podría confundir, ya que alguien puede no conocer el valor de X y el valor de Y en el momento de la llamada de función. Entonces, este problema se resuelve mediante los parámetros de nombre. Cada valor se asigna a una variable como parámetro en el momento de una llamada de función.
>> seleccionar * de Swapper (x => 198, y => 457);Mientras realiza la llamada de función, se asignan ambos valores. Y en la ejecución, cada valor se intercambia.
Conclusión
'Postgres con nombre de procedimiento' describe la función, su uso con los parámetros y también los tipos de parámetros que PostgreSQL permite al usuario usar. Hay dos anotaciones básicas de parámetros. Ambos se explican con ejemplos para que el usuario pueda distinguir fácilmente entre ambas anotaciones.