Procedimientos temporales

27/11/2004 - 01:07 por Henrys | Informe spam
Hola a todos
Tengo un modulo de estadisticas y hago una consulta que se genera
dinamicamente por diferentes procesos y parametros que va recibiendo, al
final me genera una consulta SQL y lo guardardo en un procedimiento X para
luego ejecutarlo (Esto lo hago para ese proceso lo haga el servidor y se
cargue en la aplicacion).
todo esto funciona muy bien. pero el problema que creo que voy a tener es
que al momento que diferentes usuarios entren a ese modulo (Estadisticas) y
ejecuten ese proceso quizas el prodecimiento no se actualize al momento ó
haya algun bloqueo ya que el otro usuario esta generando lo mismo ó que se
visualize la consulta que genero el otro usuario.
No se que es mas conveniento no agregar a un procedimiento y simplemente
ejecutarlo como un consulta (pero quizas quite performance ala aplicacion) ó
esto deberia de funcionar correctamente?

Preguntas similare

Leer las respuestas

#1 Maxi
27/11/2004 - 01:47 | Informe spam
Hola, en tu caso, no veo ningun sentido armar un procedimiento almacenado!!

Si usas consultas dinamicas desde el cliente entonces vas a tener que armar
el SQL desde el cliente.

La gran pregunta es:

Son necesarias estas consultas dinamicas? o solo es una tecnicas que has
aplicado por desconocimiento de otras?


"Henrys" escribió en el mensaje
news:
Hola a todos
Tengo un modulo de estadisticas y hago una consulta que se genera
dinamicamente por diferentes procesos y parametros que va recibiendo, al
final me genera una consulta SQL y lo guardardo en un procedimiento X para
luego ejecutarlo (Esto lo hago para ese proceso lo haga el servidor y se
cargue en la aplicacion).
todo esto funciona muy bien. pero el problema que creo que voy a tener es
que al momento que diferentes usuarios entren a ese modulo (Estadisticas)


y
ejecuten ese proceso quizas el prodecimiento no se actualize al momento ó
haya algun bloqueo ya que el otro usuario esta generando lo mismo ó que se
visualize la consulta que genero el otro usuario.
No se que es mas conveniento no agregar a un procedimiento y simplemente
ejecutarlo como un consulta (pero quizas quite performance ala aplicacion)


ó
esto deberia de funcionar correctamente?

Respuesta Responder a este mensaje
#2 Henrys
27/11/2004 - 17:03 | Informe spam
hola te agradezco tu punto de vista
voy a replantarlo de nuevo, realmente no genero una consulta y lo guardo
como un procedimiento si no mas bien genero un texto (SQL), luego lo guardo
como un procedimiento para luego ejecutarlo (ya que he leido que es mejor que
se ejecute el procedimiento en el servidor para hacer que este lo procese y
no sature la red)

lo que desconozco o no comprendo es lo que me dices
"solo es una tecnicas que has aplicado por desconocimiento de otras", es
incorrecto
lo que estoy haciendo,si es asi porque?.

Lo del procedimiento creo que tienes toda la razón, lo del la consulta ó
texto dinamico es por los muchisimmos parametros que va recibiendo y las
subconsultas que se hacen:
x unidad medica, fecha, tipo de estadisticas, ademas de ir descompactando
las fechas
ya que si se selecciona 30/01/2004 al 10/02/2004
tengo de ir descomponiendo y haciendo un resultado como este (Tipo cubo)

FECHAS
|
DIA ESTUDIOS PACIENTES REFERENCIADO COSTOS . COLUMNAS->
30 50 20 40 $1,313.00
31 14 34 12 $1,313.00
1 10 30 10 $1,313.00
2 20 30 20 $3,210.50
3 30 40 30 $4,150.00
4 40 30 30 $1,000,00
5 15 20 10 $10,000.00
6 20 40 0 $1,000.00
7 30 40 5 $1,300.00
8 40 20 6 $5,000.00
9 50 40 6 $13,000.00
10 30 40 10 $100.00.00
TOTAL SUMA TOTAL DE LAS COLUMNAS DE ARRIBA

Nota: Hay que validar y descomponer fechas como te mencione (como este
ejemplo 30/01/2004 al 10/02/2004)
tengo que validar los dias de cada mes (ya que los dias varian por mes y año)


Y este es otra que genero

ENERO F E B R E R O
ESTUDIO 30 31 1 2 3 4 5 6 7 8 9 10 COSTO TOTAL
EGO 2 1 1 5 7 7 4 4 9 4 4 4 $120.00 <SUMATORIA PRUEBAS>
BH 2 2 4 4 5 3 4 5 1 4 4 4 $130.00 <SUMATORIA PRUEBAS>
CULTIVO 3 32 4 5 4 4 4 6 2 4 5 4 $140.00 <SUMATORIA PRUEBAS>
ORINA 4 32 5 5 4 4 4 6 3 4 5 3 $150.00 <SUMATORIA PRUEBAS>
.. . . . . . . . . . . . ...
N . . . . . . . . . . . .
TOTAL SUMA TOTAL DE LAS COLUMNAS DE ARRIBA


Por lo cual creo que si deben de ser dinamica ó si no como podria mejorar
esto?
por tu interes y ayuda muchas gracias.
Respuesta Responder a este mensaje
#3 MAXI
27/11/2004 - 23:17 | Informe spam
Hola, mira habria que estudiar bien el tema y tener mucha mas informacion
como para poder ayudarte bien!! pero esa clase de informes las podes generar
sin ningun problema. Quizas lo debas pensar de otra forma y que el SP
retorne lo maximo posible y que el resto se resuelva en el cliente. Pero yo
intentaria sacar todo lo que es SQL-Dinamico del medio, no es nada bueno
usar esa tecnica




Maxi

Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)
Mail: Maxi_accotto[arroba]speedy.com.ar

Msn Messenger:

"Henrys" escribió en el mensaje
news:
hola te agradezco tu punto de vista
voy a replantarlo de nuevo, realmente no genero una consulta y lo guardo
como un procedimiento si no mas bien genero un texto (SQL), luego lo
guardo
como un procedimiento para luego ejecutarlo (ya que he leido que es mejor
que
se ejecute el procedimiento en el servidor para hacer que este lo procese
y
no sature la red)

lo que desconozco o no comprendo es lo que me dices
"solo es una tecnicas que has aplicado por desconocimiento de otras", es
incorrecto
lo que estoy haciendo,si es asi porque?.

Lo del procedimiento creo que tienes toda la razón, lo del la consulta ó
texto dinamico es por los muchisimmos parametros que va recibiendo y las
subconsultas que se hacen:
x unidad medica, fecha, tipo de estadisticas, ademas de ir descompactando
las fechas
ya que si se selecciona 30/01/2004 al 10/02/2004
tengo de ir descomponiendo y haciendo un resultado como este (Tipo cubo)

FECHAS
|
DIA ESTUDIOS PACIENTES REFERENCIADO COSTOS . COLUMNAS->
30 50 20 40 $1,313.00
31 14 34 12 $1,313.00
1 10 30 10 $1,313.00
2 20 30 20 $3,210.50
3 30 40 30 $4,150.00
4 40 30 30 $1,000,00
5 15 20 10 $10,000.00
6 20 40 0 $1,000.00
7 30 40 5 $1,300.00
8 40 20 6 $5,000.00
9 50 40 6 $13,000.00
10 30 40 10 $100.00.00
TOTAL SUMA TOTAL DE LAS COLUMNAS DE ARRIBA

Nota: Hay que validar y descomponer fechas como te mencione (como este
ejemplo 30/01/2004 al 10/02/2004)
tengo que validar los dias de cada mes (ya que los dias varian por mes y
año)


Y este es otra que genero

ENERO F E B R E R O
ESTUDIO 30 31 1 2 3 4 5 6 7 8 9 10 COSTO TOTAL
EGO 2 1 1 5 7 7 4 4 9 4 4 4 $120.00 <SUMATORIA PRUEBAS>
BH 2 2 4 4 5 3 4 5 1 4 4 4 $130.00 <SUMATORIA PRUEBAS>
CULTIVO 3 32 4 5 4 4 4 6 2 4 5 4 $140.00 <SUMATORIA PRUEBAS>
ORINA 4 32 5 5 4 4 4 6 3 4 5 3 $150.00 <SUMATORIA PRUEBAS>
.. . . . . . . . . . . . ...
N . . . . . . . . . . . .
TOTAL SUMA TOTAL DE LAS COLUMNAS DE ARRIBA


Por lo cual creo que si deben de ser dinamica ó si no como podria mejorar
esto?
por tu interes y ayuda muchas gracias.



Respuesta Responder a este mensaje
#4 Henrys
28/11/2004 - 01:29 | Informe spam
Ok te lo agradezco Maxi, voy a analizarlo bien
saludos

"MAXI" wrote:

Hola, mira habria que estudiar bien el tema y tener mucha mas informacion
como para poder ayudarte bien!! pero esa clase de informes las podes generar
sin ningun problema. Quizas lo debas pensar de otra forma y que el SP
retorne lo maximo posible y que el resto se resuelva en el cliente. Pero yo
intentaria sacar todo lo que es SQL-Dinamico del medio, no es nada bueno
usar esa tecnica




Maxi

Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)
Mail: Maxi_accotto[arroba]speedy.com.ar

Msn Messenger:

"Henrys" escribió en el mensaje
news:
> hola te agradezco tu punto de vista
> voy a replantarlo de nuevo, realmente no genero una consulta y lo guardo
> como un procedimiento si no mas bien genero un texto (SQL), luego lo
> guardo
> como un procedimiento para luego ejecutarlo (ya que he leido que es mejor
> que
> se ejecute el procedimiento en el servidor para hacer que este lo procese
> y
> no sature la red)
>
> lo que desconozco o no comprendo es lo que me dices
> "solo es una tecnicas que has aplicado por desconocimiento de otras", es
> incorrecto
> lo que estoy haciendo,si es asi porque?.
>
> Lo del procedimiento creo que tienes toda la razón, lo del la consulta ó
> texto dinamico es por los muchisimmos parametros que va recibiendo y las
> subconsultas que se hacen:
> x unidad medica, fecha, tipo de estadisticas, ademas de ir descompactando
> las fechas
> ya que si se selecciona 30/01/2004 al 10/02/2004
> tengo de ir descomponiendo y haciendo un resultado como este (Tipo cubo)
>
> FECHAS
> |
> DIA ESTUDIOS PACIENTES REFERENCIADO COSTOS . COLUMNAS->
> 30 50 20 40 $1,313.00
> 31 14 34 12 $1,313.00
> 1 10 30 10 $1,313.00
> 2 20 30 20 $3,210.50
> 3 30 40 30 $4,150.00
> 4 40 30 30 $1,000,00
> 5 15 20 10 $10,000.00
> 6 20 40 0 $1,000.00
> 7 30 40 5 $1,300.00
> 8 40 20 6 $5,000.00
> 9 50 40 6 $13,000.00
> 10 30 40 10 $100.00.00
> TOTAL SUMA TOTAL DE LAS COLUMNAS DE ARRIBA
>
> Nota: Hay que validar y descomponer fechas como te mencione (como este
> ejemplo 30/01/2004 al 10/02/2004)
> tengo que validar los dias de cada mes (ya que los dias varian por mes y
> año)
>
>
> Y este es otra que genero
>
> ENERO F E B R E R O
> ESTUDIO 30 31 1 2 3 4 5 6 7 8 9 10 COSTO TOTAL
> EGO 2 1 1 5 7 7 4 4 9 4 4 4 $120.00 <SUMATORIA PRUEBAS>
> BH 2 2 4 4 5 3 4 5 1 4 4 4 $130.00 <SUMATORIA PRUEBAS>
> CULTIVO 3 32 4 5 4 4 4 6 2 4 5 4 $140.00 <SUMATORIA PRUEBAS>
> ORINA 4 32 5 5 4 4 4 6 3 4 5 3 $150.00 <SUMATORIA PRUEBAS>
> .. . . . . . . . . . . . ...
> N . . . . . . . . . . . .
> TOTAL SUMA TOTAL DE LAS COLUMNAS DE ARRIBA
>
>
> Por lo cual creo que si deben de ser dinamica ó si no como podria mejorar
> esto?
> por tu interes y ayuda muchas gracias.
>
>
>



Respuesta Responder a este mensaje
#5 Javier Loria
29/11/2004 - 09:45 | Informe spam
Hola:
Independiente de la ventajas o desventajas de esta logica.
Los procedimientos almacenados temporales se crean con el nombre
iniciando con #, si quieres que sean temporales globales lo empiezas con ##.
Multiples usuarios pueden usar el mismo nombre, y mientras las conexiones
sean diferentes el servidor mantiene una copia independiente para cada
conexion.
En cuanto a la logica de la aplicacion, yo no lo haria asi. En este caso
una vista tiene mas sentido, o incluso si tienes que hacer SELECT directos
contra las tablas creo es preferible. El procedimiento almacenado temporal
es demasiado "artificial" para mi gusto. Tal vez vale la pena que te
preguntes: es mas rapido:NO; es mas facil de desarrollar: NO; es mas seguro:
NO; Es mas escalable: NO; es es mas ...; Entonces para que lo haces? :D
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda

"Henrys" wrote in message
news:
Hola a todos
Tengo un modulo de estadisticas y hago una consulta que se genera
dinamicamente por diferentes procesos y parametros que va recibiendo, al
final me genera una consulta SQL y lo guardardo en un procedimiento X para
luego ejecutarlo (Esto lo hago para ese proceso lo haga el servidor y se
cargue en la aplicacion).
todo esto funciona muy bien. pero el problema que creo que voy a tener es
que al momento que diferentes usuarios entren a ese modulo (Estadisticas)


y
ejecuten ese proceso quizas el prodecimiento no se actualize al momento ó
haya algun bloqueo ya que el otro usuario esta generando lo mismo ó que se
visualize la consulta que genero el otro usuario.
No se que es mas conveniento no agregar a un procedimiento y simplemente
ejecutarlo como un consulta (pero quizas quite performance ala aplicacion)


ó
esto deberia de funcionar correctamente?

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