Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-01-2008
erickperez6 erickperez6 is offline
Miembro
 
Registrado: may 2003
Posts: 152
Poder: 21
erickperez6 Va por buen camino
insert o update en store procedure ¿para que?

Me he preguntado si realmente hay alguna diferencia en cuestiones de rapidez en hacer insert o update dentro de un store procedure como este sin importar que tipo de base de datos relacional sea:

insert into empleados(nombres, apellidos) values ('jose', 'perez')

En donde los valores a pasarle (en este caso al Insert) ya vienen determinado desde la aplicacion, es decir, que no provienen de una consulta previa en donde los valores se desconocen.
Responder Con Cita
  #2  
Antiguo 16-01-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
En teoria se supone que es para no hacerlo tan grande por codigo, cada vez, se supone que lo que hace es agilizar el tiempo de programacion, yo particularmente pienso que no agiliza para nada el programa.
Por cierto, no lo uso.
Saludos
Responder Con Cita
  #3  
Antiguo 16-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Si hay una pequeña diferencia.

Al estar el insert/update dentro de un stored procedure, este normalmente ya estará verificado y hasta "compilado", con lo que el motor ahorrará el tiempo que toma realizar el análisis sintáctico de la sentencia y la creación de un plan de ejecución (si lo hay).

Normalmente este tiempo no es mas que unos cuantos milisegundos, pero si hablamos de miles o millones de inserciones/actualizaciones, claro que puede hacer la diferencia, no solo por el menor tiempo que tomará cada instrucción, sino por la menor carga que mantendrá el servidor (que la combinación de estos factores puede ser exponencial)

Todo depende siempre del entorno y en la arena de las bases de datos no hay nada que aplique para todas por igual.

Por ejemplo, en algunas aplicaciones se puede logar este efecto, manteniendo preparada la consulta del lado del cliente, y variando únicamente los parámetros.

Algunos motores mantienen un cache de consultas preparadas, lo que hace mas ágil el proceso cuando una misma consulta se lanza desde diversos clientes. En esto, es muy interesante el funcionamiento de Oracle, que es simple, tanto que hasta es bastante tonto, pero cuando lo conoces, podes sacarle el jugo muy bien.

Espero haber aclarado algo, y no confundir con esto.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #4  
Antiguo 16-01-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Otra ventaja podría ser, que en caso de alguna modificación o actualización de la base de datos, no tendrías que recompilar tu aplicación, si no simplemente actualizar el procedimiento almacenado.
__________________

Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Store Procedure sépoco MS SQL Server 5 10-01-2008 16:11:54
Store procedure php jorgito MySQL 1 06-06-2006 08:55:12
Emplear Store Procedure La__X Conexión con bases de datos 5 19-01-2006 02:03:13
Parametros Para Store Procedure En Cystal 10 RicardoLT Impresión 2 09-09-2004 13:19:01
store procedure ronimaxh Firebird e Interbase 2 24-06-2003 20:20:22


La franja horaria es GMT +2. Ahora son las 13:00:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi