Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Temas relacionados > Debates
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-05-2014
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 21
ASAPLTDA Va por buen camino
Smile Firebird Procedures VS Delphi Procedures

Hola Todos
Quisera tener sus comentarios si uno debe ejecutar validaciones y procesos usando delphi o usar los procedimientos en la base de datos para ejecutar procesos y validaciones, que es mas rapido, veo que las bases de datos tienen su propio lenguaje para ejectuar estos procesos pl / sql etc
Saludos
uso firebird 2.1 , delphi 5/x2
Responder Con Cita
  #2  
Antiguo 26-05-2014
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Siempre será más rápido ejecutarla en el Servidor de Base de Datos, pero tal vez no siempre aconsejable.
A mi personalmente me gusta hacer las validaciones (a priori todas) en el programa. Son más fáciles de controlar, de "debuggar", el código está centralizado, más fácil para detectar errores, mejor para versionado,...

En operaciones normales (no especiales) sacrifico la velocidad en pro de otras cosas como las que te he comentado.

Eso sí, para procesos críticos, importantes o que requieren velocidad de proceso, deben ir en el SGDB, pero intento que sean los mínimos.

Supongo que habrá quien no esté de acuerdo, pero yo lo hago así.

He visto Base de Datos con cientos de procedimientos y triggers (casi para cualquier cosa), y eran una verdadera locura en varias situaciones:
* A la hora de migrar a otro sistema.
* A la hora de actualizar determinados objetos de la base de datos por las dependencias.
* A la hora de grabar de buscar un simple error de porqué un dato no se guardaba correctamente. Busca en el código, busca en los Stored, y busca en los triggers...
__________________
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.

Última edición por Neftali [Germán.Estévez] fecha: 26-05-2014 a las 11:18:49.
Responder Con Cita
  #3  
Antiguo 26-05-2014
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.457
Poder: 20
newtron Va camino a la fama
Hola.

Como bien apunta el amigo Neftali es bastante más fácil de mantener el código si está dentro del programa que no en procedimientos almacenados o triggers. Yo particularmente no uso los procedimientos almacenados pero si los triggers para asegurarme de que SIEMPRE que se añada, edite o anulen registros sea desde donde sea se efectúen ciertas operaciones para mantenimiento de xistencias, acumulados, etc.

Saludos
__________________
Be water my friend.
Responder Con Cita
  #4  
Antiguo 26-05-2014
Avatar de Combat-F2D
Combat-F2D Combat-F2D is offline
Miembro
 
Registrado: may 2003
Ubicación: Toletum
Posts: 454
Poder: 21
Combat-F2D Va por buen camino
yo preferentemente uso las validaciones en la Base de Datos, o todas las que puedo y son razonables
asi si hay alguna inconsistencia, esta se encarga de lanzar la excepcion, evita actualizaciones en los
clientes en un momento dado.

trabajar en el codigo de la aplicacion pienso que da mas versatilidad, mas posibilidades.

creo que ambas cosas aplicadas en su mejor medida puede ser lo mas aconsejable
__________________
online
Responder Con Cita
  #5  
Antiguo 26-05-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Coincido con lo dicho.

En líneas generales uso los sp:
. Para disminuir el tráfico de red y aumentar la seguridad.
. En consultas complejas o aquellas en que alguna depende del resultado de otras.
. Para operaciones que implican actualizaciones o cargas masivas.

Realizo casi la totalidad de validaciones desde la bd (a nivel campo, integridad referencial, etc). El resto (consultas, calculos, etc) desde el lenguaje.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 26-05-2014 a las 18:56:44.
Responder Con Cita
  #6  
Antiguo 27-05-2014
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 21
ASAPLTDA Va por buen camino
Thumbs up El poder de las bases de datos

Hola a Todos, He leido sus comentarios y me parecen que son aporte valioso a mi proyecto de migrar firebird a PostgreSql, ya que leyendo las caracteristicas de esta base de datos su PL/SQL es muy poderoso , por supuesto sigo estudiando y leyendo sus comentarios.
Mi esperiencia con firebird ha sido excelente, pero vengo de sistemas as400 donde hay una marcada tendencia en usar los proceimientos de la base de datos sin importar que lenguaje se utilice, para evitar el trafico de la red.
Firebird tiene algunos detalles molestos en el campo d integridad de datos y su carencia de funciones , el manejo de %row para mover los campos a las variables, por eso me encanta oir sus comentarios de donde debe estar los procedimientos
Responder Con Cita
  #7  
Antiguo 27-05-2014
Avatar de MAXIUM
MAXIUM MAXIUM is offline
Miembro
 
Registrado: may 2005
Posts: 1.485
Poder: 20
MAXIUM Va camino a la fama
¿Es hoy un problema el ahorrar lineas de código en favor de los recursos de memoria tanto en disco como en RAM?

¿Es hoy un problema el trafico de red?
Responder Con Cita
  #8  
Antiguo 27-05-2014
Avatar de Combat-F2D
Combat-F2D Combat-F2D is offline
Miembro
 
Registrado: may 2003
Ubicación: Toletum
Posts: 454
Poder: 21
Combat-F2D Va por buen camino
Cita:
Empezado por MAXIUM Ver Mensaje
¿Es hoy un problema el trafico de red?
creo que eso te lo tienes que responder tu mismo
__________________
online
Responder Con Cita
  #9  
Antiguo 27-05-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por ASAPLTDA Ver Mensaje
Firebird tiene algunos detalles molestos en el campo d integridad de datos y su carencia de funciones , el manejo de %row para mover los campos a las variables, por eso me encanta oir sus comentarios de donde debe estar los procedimientos
No entiendo, ¿puedes explicarlo con un poco más de detalle?
Responder Con Cita
  #10  
Antiguo 27-05-2014
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 21
ASAPLTDA Va por buen camino
Smile Alguno detalles Molestos

Cita:
Empezado por Casimiro Notevi Ver Mensaje
No entiendo, ¿puedes explicarlo con un poco más de detalle?
1.En el transcurso he notado que en caso de agregar alguna restricción posterior a los registros , los datos existentes no son validado previo a adicionar la transaccion en la base de datos

2. en un cambio de campos float a decimal (18,10) genero inconvenientes cuando efectuaba un multiplicación con otro campo decimal

3. Cuando se ejecuta el restore de un backup informa de errores que uno desconocía por ejemplo ha sucedido que informa que claves primarias no tienen la restricción not null, los cambios los efectuó usando ibexpert gratuito

Por otro lado quiero decir que la base la he usado sin ningun problema de perdida de datos, es muy facil de manejarla, instalarla es una excelente herramienta de trabajo.

Tal como comente he estado leyendo postgresql y tiene muy buenas herramientas y me ha gustado , pero debo leer y investigar mas para efectuar un cambio. Otra parte que me parece intersante es que no se requiere colocar el cliente de la base de datos en los pc*clientes o en telefono androit usando los componentes pgdac(devart)
Responder Con Cita
  #11  
Antiguo 27-05-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Bueno, esas incidencias no son culpa de la BD en sí.

De todas formas, postgresql es una muy buena base de datos también (y libre), y depende para lo que vayas usarla, puede ser más indicada.
En cuanto a que no necesitas instalar un cliente, bueno, siempre hace falta, si no lo haces tú es porque los componentes lo hacen por ti, al llevarlos integrados.
Responder Con Cita
  #12  
Antiguo 28-05-2014
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 21
ASAPLTDA Va por buen camino
Instalacion Cliente Postgress liqpq.dll

Cita:
Empezado por Casimiro Notevi Ver Mensaje
tú es porque los componentes lo hacen por ti, al llevarlos integrados.
Casimiro, en su experiencia sabe donde colocar el cliente de postgress libpq.dll (folder uso windows x7 64b) estoy usando los componentes sqldirect, alguna vez hice una prueba de conexion y si funcionaron (creo que era version 8.x) pero ahora con la nueva version no encuentra la DLL y retrona ese mensaje y busca otra dll vsnit.dll
Responder Con Cita
  #13  
Antiguo 28-05-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
La verdad es que no tengo ni idea, yo dejo los directorios predeterminados al instalar cualquier cosa.
Responder Con Cita
  #14  
Antiguo 28-05-2014
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 21
ASAPLTDA Va por buen camino
Smile postgressql + sqldirect Falta Libpq.dll + vsnit.dll

Cita:
Empezado por ASAPLTDA Ver Mensaje
Casimiro, en su experiencia sabe donde colocar el cliente de postgress libpq.dll (folder uso windows x7 64b) estoy usando los componentes sqldirect, alguna vez hice una prueba de conexion y si funcionaron (creo que era version 8.x) pero ahora con la nueva version no encuentra la DLL y retorna ese mensaje y busca otra dll vsnit.dll
Hola adicione la ruta de postgresql al path del sistema y arregle el problema gracias por su aporte

C:\Program Files (x86)\PostgreSQL\9.3\bin
Responder Con Cita
  #15  
Antiguo 28-05-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Ya he visto el otro hilo. Por cierto, ¿por qué me hablas de usted?
Responder Con Cita
  #16  
Antiguo 28-05-2014
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.457
Poder: 20
newtron Va camino a la fama
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Ya he visto el otro hilo. Por cierto, ¿por qué me hablas de usted?
Porque eres un tío importante, además de mayor.
__________________
Be water my friend.
Responder Con Cita
  #17  
Antiguo 28-05-2014
Avatar de Combat-F2D
Combat-F2D Combat-F2D is offline
Miembro
 
Registrado: may 2003
Ubicación: Toletum
Posts: 454
Poder: 21
Combat-F2D Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
Porque eres un tío importante, además de mayor.
vamos a ver, te equivocas, el avatar es de Rompetechos, noooo del ABUELO CEBOLLEEEETA....
es broma claro.. eso si, es un tio importante
__________________
online
Responder Con Cita
  #18  
Antiguo 29-05-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Mayor sí que soy, toda la vida he sido mayor porque nací mayor, nunca he sido joven
Importante, no, eso sí que no
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Delphi 7 y Store Procedures pelaorb68 Conexión con bases de datos 2 10-10-2008 21:28:46
stored procedures Delphi 2005 .net y MySQL 5 martinsarubbi Conexión con bases de datos 2 17-04-2007 21:07:13
Ocultar código de Stored Procedures y Triggers en FireBird... jncrls Firebird e Interbase 4 08-01-2007 17:51:52
Enviar parametros desde Delphi a Storage Procedures en BD Firebird cuburu Conexión con bases de datos 12 18-01-2006 00:00:48
store procedures en firebird ale21alito Firebird e Interbase 2 30-11-2005 04:18:22


La franja horaria es GMT +2. Ahora son las 11:11:09.


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