Funciones definidas por usuario llamadas por otro usuario

08/11/2005 - 18:35 por Mauricio | Informe spam
Hola a todos,
vez pasada consulté sobre cómo cambiar el owner a una función,
cosa que gracias a vuestra ayuda logré hacer. Necesito ahora saber si
una función definida por un usuario (digamos 'dbo') puede ser llamada
por otro usuario ('desarrollo') sin necesidad de anteponerle el nombre.
La función que definí se llama fonet_8 y quisiera hacer una
llamada de este tipo.
SELECT fonet_8('MAURICIO') FROM IDDCVE
Esto actualmente me da el mensaje "'fonet_8' no es un nombre de
función reconocido."
Nuevamente, muchas gracias por vuestra ayuda.
Saludos.

Mauricio Nicastro
Barcelona, España

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
08/11/2005 - 19:32 | Informe spam
Mauricio,

Es un requerimiento de sql server, que las funciones escalares sean llamadas
usando el duenio (Ve "create function" en los libros en linea). Es una buena
practica, qualificar los objetos con su duenio porque sql server te permite
tener dos objetos con el mismo nombre pero diferente duenio y si no
especificas el duenio entonces sql server buscara dbo.objeto y si este no
existe entonces dara error.


AMB

"Mauricio" wrote:

Hola a todos,
vez pasada consulté sobre cómo cambiar el owner a una función,
cosa que gracias a vuestra ayuda logré hacer. Necesito ahora saber si
una función definida por un usuario (digamos 'dbo') puede ser llamada
por otro usuario ('desarrollo') sin necesidad de anteponerle el nombre.
La función que definí se llama fonet_8 y quisiera hacer una
llamada de este tipo.
SELECT fonet_8('MAURICIO') FROM IDDCVE
Esto actualmente me da el mensaje "'fonet_8' no es un nombre de
función reconocido."
Nuevamente, muchas gracias por vuestra ayuda.
Saludos.

Mauricio Nicastro
Barcelona, España


Respuesta Responder a este mensaje
#2 Mauricio
08/11/2005 - 19:45 | Informe spam
Alejandro Mesa escribió:
Mauricio,

Es un requerimiento de sql server, que las funciones escalares sean llamadas
usando el duenio (Ve "create function" en los libros en linea). Es una buena
practica, qualificar los objetos con su duenio porque sql server te permite
tener dos objetos con el mismo nombre pero diferente duenio y si no
especificas el duenio entonces sql server buscara dbo.objeto y si este no
existe entonces dara error.


AMB

"Mauricio" wrote:


Hola a todos,
vez pasada consulté sobre cómo cambiar el owner a una función,
cosa que gracias a vuestra ayuda logré hacer. Necesito ahora saber si
una función definida por un usuario (digamos 'dbo') puede ser llamada
por otro usuario ('desarrollo') sin necesidad de anteponerle el nombre.
La función que definí se llama fonet_8 y quisiera hacer una
llamada de este tipo.
SELECT fonet_8('MAURICIO') FROM IDDCVE
Esto actualmente me da el mensaje "'fonet_8' no es un nombre de
función reconocido."
Nuevamente, muchas gracias por vuestra ayuda.
Saludos.

Mauricio Nicastro
Barcelona, España






Gracias por la respuesta, Alejandro. Ya había visto en los BOL que se
necesitaba el dueño, pero quería ver si había alguna forma de evitarla,
haciendo la función pública o no sé qué otra posibilidad.
Tendré que implementarlo de esta forma entonces.
Muchas gracias.

Mauricio
Respuesta Responder a este mensaje
#3 Miguel Egea
08/11/2005 - 20:54 | Informe spam
ponle delante el nombre del propietario bien dbo.fonet_8 bien
usuarioquesea.fonet_8


Miguel Egea
Visita mi web http://www.portalsql.com
SQL Server MVP, Mentor
Solid Quality Learning
http://www.SolidQualityLearning.com
"Solid Quality Learning is the trusted global provider of advanced education
and solutions for the entire Microsoft database platform"

"Mauricio" wrote in message
news:
Hola a todos,
vez pasada consulté sobre cómo cambiar el owner a una función,
cosa que gracias a vuestra ayuda logré hacer. Necesito ahora saber si
una función definida por un usuario (digamos 'dbo') puede ser llamada
por otro usuario ('desarrollo') sin necesidad de anteponerle el nombre.
La función que definí se llama fonet_8 y quisiera hacer una
llamada de este tipo.
SELECT fonet_8('MAURICIO') FROM IDDCVE
Esto actualmente me da el mensaje "'fonet_8' no es un nombre de
función reconocido."
Nuevamente, muchas gracias por vuestra ayuda.
Saludos.

Mauricio Nicastro
Barcelona, España
Respuesta Responder a este mensaje
#4 Maxi [MVP]
08/11/2005 - 21:23 | Informe spam
Hola, ampliando un poquito mas el tema, en sql2005 tendremos Schemas y el
que no ha puesto el dueño delante podra tener serios problemas :(


Salu2
-
[MVP] SQL Server
Orador para Culminis Latam
Miembro de GUESS



"Alejandro Mesa" escribió en el
mensaje news:
Mauricio,

Es un requerimiento de sql server, que las funciones escalares sean
llamadas
usando el duenio (Ve "create function" en los libros en linea). Es una
buena
practica, qualificar los objetos con su duenio porque sql server te
permite
tener dos objetos con el mismo nombre pero diferente duenio y si no
especificas el duenio entonces sql server buscara dbo.objeto y si este no
existe entonces dara error.


AMB

"Mauricio" wrote:

Hola a todos,
vez pasada consulté sobre cómo cambiar el owner a una función,
cosa que gracias a vuestra ayuda logré hacer. Necesito ahora saber si
una función definida por un usuario (digamos 'dbo') puede ser llamada
por otro usuario ('desarrollo') sin necesidad de anteponerle el nombre.
La función que definí se llama fonet_8 y quisiera hacer una
llamada de este tipo.
SELECT fonet_8('MAURICIO') FROM IDDCVE
Esto actualmente me da el mensaje "'fonet_8' no es un nombre de
función reconocido."
Nuevamente, muchas gracias por vuestra ayuda.
Saludos.

Mauricio Nicastro
Barcelona, España


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida