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-05-2008
socger socger is offline
Miembro
 
Registrado: jun 2004
Posts: 89
Poder: 20
socger Va por buen camino
¿Cómo refrescar un registro de una adoQuery que ataca SQL Server?

Muy buenas. Ante todo gracias por leerme este hilo.

Ataco una tabla en una bd en SQL Server. Mi Delphi es v.5, así que la ataco con componentes ADO. Tengo un adoQuery ligado a un adoConnection. El problema se me suscita a que tengo que refrescar un registro antes de editarlo, porque otro usuario puede habérmelo cambiado. ¿Serías tan amable de decirme cómo hacer sólo el refresco de este registro sin tener que refrescar toda la tabla ni que pierda el foco del dbGrid al registro en el que se encuentra?

Lo he solucionado refrescando toda la tabla y haciendo un locate sobre ciertos campos claves al registro donde estaba antes de hacer el refresco. Pero seguro que hay otra manera de evitar traerme por la red todos los registros, cuando sólo deseo en realidad refrescar sobre el que me encuentro.

Y ahora las gracias oportunas, por haber terminado de leer esta solicitud de ayuda sin reirte de mi (por novato) o no documentarme mejor en internet antes de hacer este hilo. Pero pensé en hacer esta consulta antes, por falta de tiempo.

Lo dicho, gracias.
Responder Con Cita
  #2  
Antiguo 27-05-2008
tefots tefots is offline
Miembro
 
Registrado: feb 2005
Posts: 108
Poder: 20
tefots Va por buen camino
Con ADO no puedes 'refrescar' el registro actual en el que estás posicionado en el query.
tendrias que abrir otro query obteniendo solo el registro actual , y comprobando que los datos son iguales o distintos.

no obstante , no hay que refrescar , antes de modificar , ya que tienes la posibilidad de que mientras estés modificando el registro actual ,haya alguien por red que también esté modificandolo y le de al post antes que tu.

lo que hay que hacer es controlar el .post , para que en caso de error avise al usuario , y que el usuario decida si desea cancelar sus cambios y obtener los nuevos datos , o si desea modificar el registro con los 'nuevos datos' con posibildad de perdida de informacion provocada por la modificación de los datos por parte de otro usuario..

Saludos.
Responder Con Cita
  #3  
Antiguo 28-05-2008
socger socger is offline
Miembro
 
Registrado: jun 2004
Posts: 89
Poder: 20
socger Va por buen camino
Gracias

Gracias, tefots. Esto ya me lo imaginaba.

Al final lo he solucionado todo creando una tabla de semáforo, donde voy guardando contadores. Al final incluso consigo mayor rapidez que tener que ir calculando cada vez que creara un registro el max para el próximo.

Saludos y gracias.
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
Refrescar tabla al eliminar registro Shikanda Conexión con bases de datos 4 10-09-2007 17:22:36
Ataca camello a mujer por “ímpetu sexual” Arcioneo Noticias 1 30-08-2007 03:22:34
FIBPlus: Refrescar un solo registro El_Raso Conexión con bases de datos 1 20-08-2007 01:32:43
Refrescar coneccion a server interbase Pascual Montes Firebird e Interbase 3 13-05-2005 23:22:37
Que puerto usar en aplicación que ataca a servidor??? burasu MySQL 4 15-08-2004 17:56:04


La franja horaria es GMT +2. Ahora son las 23:15:56.


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