SQL Server - Función definida por el Usuario

   
Vista:
Imágen de perfil de Elier

Función definida por el Usuario

Publicado por Elier elierlora@yahoo.com (1 intervención) el 07/11/2011 15:58:10
Mi Problema:
Defino una Función en SQl Server de la siguienteforma

CREATE FUNCTION CantidadTr()
RETURNS int AS
BEGIN
Declare @C as int
set @c=(SELECT Count(Cobro) FROM ftPersonas)
return @c
END

A la Hora de Realizar una invocación desde el analizador de consultas hago:

SELECT * FROM CantidadTr()

Y Siempre me reporta:

Servidor: mensaje 208, nivel 16, estado 3, línea 1
El nombre de objeto 'cantidadTr' no es válido.

Por Favor podría alguien indicarme qué estoy haciendo mal?

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Función definida por el Usuario

Publicado por leonardo_josue (79 intervenciones) el 08/11/2011 23:19:06
Ya te respondí en otros "Foros del Web", pero te pongo también la respuesta aquí:

Las funciones escalares (Aquellas que sólo regresan un valor) NO PUEDEN SER UTILIZADAS EN EL FROM, sino que se utilizan en la parte del SELECT.

Select CantidadTr() .........

Segundo, es recomendable que siempre especifiques el esquema o propietario de la función...

CREATE FUNCTION DBO.CantidadTr()

CREATE FUNCTION Otro_esquema.CantidadTr()

de tal suerte que también cuando la invoques utilices el propietario para mencionarla

Saludos
Leo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias

Función definida por el Usuario

Publicado por Isaias (3180 intervenciones) el 10/11/2011 01:48:03
Solo un comentario mi estimado Leo.

Claro que se pueden utilizar en el FROM, solo que la funcion, regrese un tipo de dato TABLE.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar