Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-06-2011
nextor nextor is offline
Miembro
 
Registrado: abr 2010
Posts: 31
Poder: 0
nextor Va por buen camino
Mantenimiento a tabla

Buen dia a todos !!!
pues queria molestarlos con unas pequeñas consultas:

1.- Actualmente tengo un mantenimiento de datos a una tabla con delphi 7 y el muy util BDE (MS SQL), y funcionaba bastante bien, ahora tengo el problema de que a las tablas a las cuales hago referencia son muy grandes y aunque haga filtros, al parecer siempre abre toda la tabla. y se tarda demasiado. quisiera pedirle su opnion sobre como deberia de cambiar esto para hacerlo mas efeciente.

2.- como les he comentado estoy utilizando el componente BDE para conectarme mediante ODBC a MSSQL 2005, mi problema radica en que cada vez que instalo en una maquina cliente, debo instalar el BDE y por politicas de la empresa estan bloqueados los setups o instaladores, y si lo intento instalar manualmente, siempre me da error al registrar la libreria, mi pregunta es: ¿Existe algun otro componente u otra forma de hacer mis conexiones sin tener que instalar nada adicional?

3.- y mi ultima pregunta es: como puedo llevar el control de datos que se modifican, es decir si tengo un mantenimiento a la tabla de clientes como puedo controlar que si se modifico un campo de esta tabla saber que valor tenia antes y que valor tiene ahora. solo para aclarar: si manejo una tabla de bitacora y tambien se que usuario esta conectado. pero realmente se necesita saber el detalle de todas la modificaciones que el usuario realice sobre un determinado registro.

Agradesco de ante mano todas las sugerencias que me puedan dar
Responder Con Cita
  #2  
Antiguo 27-06-2011
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
En cuanto a la pregunta nro. 1, supongo que deberás filtrar la consulta en el servidor:
No solo utilizar la propiedad Filter del TDataset, sino enviar el SQL apropiado para que te traiga solo la información relevante.

Código SQL [-]
SELECT * FROM TABLA WHERE EJERCICIO=2011

Con respecto a la pregunta nro. 3, creo que la solución es generar triggers que guarden la información que necesitas.

Código SQL [-]
Trigger BeforeUpdate
begin
   insert into LOG (fecha, valor_anterior, valor_actual) values ('Now', old.valor, new.valor);
end
No conozco SQL Server, pero debe ser algo parecido a lo que escribo.

Puedes hacer lo mismo con un trigger Before_Delete para saber cuando se ha borrado y qué valor tenía.
Responder Con Cita
  #3  
Antiguo 28-06-2011
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Sobre la pregunta Número 2, por que no utilizas ADO, solo necesitas instalar el controlador de conexión de SQL SERVER 2005, el cual yo manejo bastante, mira este enlace, tienes que descargar el sqlncli.msi
Un saludo.
Responder Con Cita
  #4  
Antiguo 28-06-2011
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Sobre la pregunta número 3, se puede hacer esto.
Código SQL [-]
UPDATE Tabla
  SET
    CODIGOANT = CODIGO
    ,CODIGO = VALORNUEVO
  WHERE IDTABLA = ???
Lo que hace es actualiza el CODIGOANT con el CODIGO en este caso el antiguo que se tenia, después actualiza el CODIGO con el VALORNUEVO.

Un saludo.
Responder Con Cita
  #5  
Antiguo 28-06-2011
nextor nextor is offline
Miembro
 
Registrado: abr 2010
Posts: 31
Poder: 0
nextor Va por buen camino
Thumbs up

Gracias a todos por sus sugerencias y consejos voy a probar la conexion ado y para llevar el control de cambios a una tabla voy a ver que puedo hacer con los eventos after y before post.
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
ayuda con mantenimiento de sistema microbiano Varios 4 27-12-2010 16:23:38
Mantenimiento a Access Jucho69 Conexión con bases de datos 17 22-05-2010 11:43:38
Software Mantenimiento Preventivo en Delphi maximo_nashir Lazarus, FreePascal, Kylix, etc. 5 14-06-2008 00:55:01
Mantenimiento De Registro RDELROSARIOM Conexión con bases de datos 1 22-04-2005 23:15:34


La franja horaria es GMT +2. Ahora son las 17:56:37.


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