Compartir funciones y procedimientos entre base de datos

16/03/2010 - 19:15 por Cynthia Rojas | Informe spam
Me asignaron hacer unos procedimientos y funciones en un servidor de SQL2008
pero este tiene varias bases de datos. Muchos de esos procedimientos y
funciones se van a utilizar en mas de una base de datos ya que son de
aplicaciones de negocios de una misma empresa. (Nota: ya estan asi, y no se
van a juntar en una sola base).

Hay manera de poner esos procedimientos y funciones que esten disponibles y
compartidos para todas (o varias de) las bases de datos del servidor o
necesariamente hay que repetir el codigo en cada una?

Estuve analizando ponerlos en una sola de las bases y poner las referencias
absolutas (BD.dbo.sp) en las llamadas aun este en uso otra base de datos
pero no se si eso puede afectar la velocidad de las llamadas.

Que me podrian recomendar ?, muchas gracias por la ayuda que me puedan
brindar para eso.

Preguntas similare

Leer las respuestas

#1 Miguel Egea
16/03/2010 - 20:26 | Informe spam
La alternativa que has barajado me parece adecuada, puedes crearle
interfaces en cada BBDD para no cambiar otros procedimientos o aplicaciones,
la idea sería

Procedimiento esquema.nombre @par1, @par2 en BBDD se convierte en
exec @retorno= bbddcomun.esquema.nombre @par1,@par2
return @retorno

y en BBDD común metes el código de tal forma que solo mantienes 1 y no tocas
aplicaciones.

Saludos Cordiales
Miguel Egea
Solid Quality Mentos
http://www.portalsql.com

"Cynthia Rojas" escribió en el mensaje de
noticias:
Me asignaron hacer unos procedimientos y funciones en un servidor de
SQL2008 pero este tiene varias bases de datos. Muchos de esos
procedimientos y funciones se van a utilizar en mas de una base de datos
ya que son de aplicaciones de negocios de una misma empresa. (Nota: ya
estan asi, y no se van a juntar en una sola base).

Hay manera de poner esos procedimientos y funciones que esten disponibles
y compartidos para todas (o varias de) las bases de datos del servidor o
necesariamente hay que repetir el codigo en cada una?

Estuve analizando ponerlos en una sola de las bases y poner las
referencias absolutas (BD.dbo.sp) en las llamadas aun este en uso otra
base de datos pero no se si eso puede afectar la velocidad de las
llamadas.

Que me podrian recomendar ?, muchas gracias por la ayuda que me puedan
brindar para eso.

Respuesta Responder a este mensaje
#2 Miguel Egea
16/03/2010 - 20:27 | Informe spam
perdón y por completar mi respuesta El rendimiento se verá "ligeramente"
afectado SQL Tiene que comprobar la seguridad del usuario actual para
ejecutar procedimientos y acceder a la BBDD común, pero vamos estoy seguro
que será absolutamente inapreciable. Recuerdo una charla de Fernando G.
Guerrero en la que decía que pasa por unas 1500 lineas más de código C++ es
decir... nada...

Saludos Cordiales
Miguel Egea
Solid Quality Mentos
http://www.portalsql.com

"Cynthia Rojas" escribió en el mensaje de
noticias:
Me asignaron hacer unos procedimientos y funciones en un servidor de
SQL2008 pero este tiene varias bases de datos. Muchos de esos
procedimientos y funciones se van a utilizar en mas de una base de datos
ya que son de aplicaciones de negocios de una misma empresa. (Nota: ya
estan asi, y no se van a juntar en una sola base).

Hay manera de poner esos procedimientos y funciones que esten disponibles
y compartidos para todas (o varias de) las bases de datos del servidor o
necesariamente hay que repetir el codigo en cada una?

Estuve analizando ponerlos en una sola de las bases y poner las
referencias absolutas (BD.dbo.sp) en las llamadas aun este en uso otra
base de datos pero no se si eso puede afectar la velocidad de las
llamadas.

Que me podrian recomendar ?, muchas gracias por la ayuda que me puedan
brindar para eso.

Respuesta Responder a este mensaje
#3 Cynthia Rojas
16/03/2010 - 21:15 | Informe spam
Ok, muchas gracias!


"Miguel Egea" escribió en el mensaje
news:
La alternativa que has barajado me parece adecuada, puedes crearle
interfaces en cada BBDD para no cambiar otros procedimientos o
aplicaciones, la idea sería

Procedimiento esquema.nombre @par1, @par2 en BBDD se convierte en
exec @retorno= bbddcomun.esquema.nombre @par1,@par2
return @retorno

y en BBDD común metes el código de tal forma que solo mantienes 1 y no
tocas aplicaciones.

Saludos Cordiales
Miguel Egea
Solid Quality Mentos
http://www.portalsql.com

"Cynthia Rojas" escribió en el mensaje de
noticias:
Me asignaron hacer unos procedimientos y funciones en un servidor de
SQL2008 pero este tiene varias bases de datos. Muchos de esos
procedimientos y funciones se van a utilizar en mas de una base de datos
ya que son de aplicaciones de negocios de una misma empresa. (Nota: ya
estan asi, y no se van a juntar en una sola base).

Hay manera de poner esos procedimientos y funciones que esten disponibles
y compartidos para todas (o varias de) las bases de datos del servidor o
necesariamente hay que repetir el codigo en cada una?

Estuve analizando ponerlos en una sola de las bases y poner las
referencias absolutas (BD.dbo.sp) en las llamadas aun este en uso otra
base de datos pero no se si eso puede afectar la velocidad de las
llamadas.

Que me podrian recomendar ?, muchas gracias por la ayuda que me puedan
brindar para eso.

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