Son rutinas almacenadas que reciben parámetros escalares de entrada
Se procesan segun sea el caso y retorna un resultado
De tipo especifico para utilizarse en algún otro objetivo
Las funciones definidas por el usuario
Permiten retornar tablas en los resultados
Proporcionan facilidad para administrar las BD
Existen tres tipos de funciones
Las cuales son:
Funciones escalares
Reciben parámetros de entrada son procesados
Para al final retornar un valor con un tipo de dato sencillo
Utiliza la palabra reservada RETURNS
Para indicar el valor a retornar
Sintaxis
CREATE FUNCTION [DBO].[Nombre_Funcion]
Creación de la función
( @ID AS VARCHAR(7), @nombre AS VARCHAR
(70), @tipo AS CHAR (2) )
Bloque de parámetros que va recibir
RETURNS VARCHAR(6)
AS
Tipo de dato a retornar
BEGIN DECLARE @Valor_Retorno AS VARCHAR(6) DECLARE
@Valor_Intermedio AS VARCHAR(6) @Valor_Intermedio = SELECT
Valor FROM DBO.tbTabla WHERE strCod = @ID AND strNombre =
@nombre AND strTipo = @tipo SET @Valor_Retorno =
@Valor_Intermedio RETURN @Valor_Retorno END GO
Código Sql para asignar el return
Funciones con valores de tabla en linea
A diferencia de la función escalar esta
Devuelve un tipo de dato TABLE
Sintaxis
CREATE FUNCTION nombre_funcion ( [parametro1, parametro2,...])
RETURNS TABLE
[WITH ENCRYPTION | WITH SCHEMABINDING]
[AS]
RETURN (consulta_SELECT)
Devuelve los datos de una consulta en la variable table
Da inicio
Indica si el resultado obtenido sera encriptado
Devuelve un tipo de dato tabla
Creación de la función e indica los parámetros a recibir
Funciones con valores de tabla y múltiples instrucciones
Es similar a la tabla de linea
La diferencia es que en esta se manipulan la información
Antes de retornar a la tabla
Sintaxis
CREATE FUNCTION nombre_funcion ( [parametro1, parámetro2,...])
Creación de la función e indica los parámetros a recibir