![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Insert desde SP o desde Dataset
Estoy empezando a tratar de mejorar mis practicas como programador y me surge la duda ¿Qué e lo correcto hacer insert desde un procedimiento almacenado o hacer insert desde el dataset de la aplicación?, ¿cuando se deben usar procedimientos almacenados, cuando triggers y cuando se deben hacer las operaciones directamente desde la aplicación?.
Espero me puedan orientar o me puedan dar alguna referencia sobre esto. Gracias. |
#2
|
||||
|
||||
Hola sin ser un experto (Aun sigo aprendiendo) te diré que la manera de hacerlo dependerá del contexto de tu aplicación. Habra momentos en que manejar los datos desde la aplicación pueden ser una buena solución; en otros casos no. Como te dije depende.
Aunque lo de aplicar las actualizaciones desde procedimientos almacenados es una opción que estoy pensando aplicar. Saludos |
#3
|
||||
|
||||
Pues sí, depende, siempre depende.
"Normalmente" prefiero un dataset y pasarle los parámetros.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#4
|
||||
|
||||
Lo normal si estás programando en delphi es que lo hagas desde la aplicación, usando datasets (Tables o Querys -SQL-)
También puedes realizar una inserción desde un STORED PROCEDURE. Esto tiene ventajas e inconvenientes, de ahí que todo dependa de determinados parámetros. La inserción desde un SP será más eficiente pues se hace desde el propio servidor (sobre todo cuantos más datos tengas que insertar), pero lleva más trabajo de programación y desde nuestro punto de vista son más incómodos de trabajar (porque no podemos debugarlos, poner watches, breakpoints, logs,... como hacemos en un programa de delphi -en realidad si se puede en algunos sistemas pero es más costoso-). Otro problema que traen los SP (y yo lo he sufrido) es que si algún día cambias de Base de Datos, tu programa Delphi, funcionará casi al 100% (dependiendo de la compatibilidad), pero tus SP y triggers es posible que no sean compatibles, así que tendrás que reescribirlos para la nueva Base de Datos. CONCLUSIÓN (personal): La inserción con SP tiene grandes ventajas, como he dicho sobre todo para inserción/update/borrado de datos masivos, o cuando necesitas un proceso que debe realiza muchas consultas y trabajo de Base de Datos. Por ejemplo extracción de datos estadísticos, consolidación de datos, datos para listados,... En esos casos yo opto por usar Stored Procedures. En el resto de casos suelo trabajar desde la aplicación , sea con Datasets o con SQL directamente.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#5
|
||||
|
||||
Cita:
![]() ![]() ![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Desde una SP crear tabla e insert | jars | SQL | 3 | 31-07-2013 09:01:36 |
Actualizar un dataset desde otro dataset | jafera | Conexión con bases de datos | 17 | 18-12-2008 23:57:10 |
Acceder a un DataSet desde otra unidad | SMTZ | .NET | 5 | 24-12-2005 09:01:47 |
Acceder a un DataSet (.NET) desde otra Unidad | SMTZ | .NET | 9 | 22-10-2005 17:10:40 |
como enviar un dataSet desde Delphi a Oracle?? | Jaco | Oracle | 3 | 25-09-2003 16:19:25 |
![]() |
|