Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Como bloquear una tupla de una tabla

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Como bloquear una tupla de una tabla Responder citando

No hay alguna forma via SQL, de bloquear una tupla de una tabla, he leido que hay que crearse un campo nuevo bloqueado y poner un * pero esque si tuviera 100 bloqueados, y se reiniciara el PC, se quedarian bloqueados eternamente, a noser que desbloqueara TODOS...

Alguna idea???o solucion??

Gracias
_________________
Los problemas mas dificiles tienen las soluciones mas sencillas
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

No es mala la idea, pero la mejor forma de hacerlo es usando transacciones.

Inicias una tranasaccion antes de bloquear uno o 1000 tuplas y si existe algun problema o se reinicia tu PC, el estado de tus tuplas será el mismo que tenian antes de iniciar la transaccion. Si por el contrario todo va bien finalizas la transaccion y tus datos serán consistentes.

Saludos.
_________________
Quien hace una pregunta teme parecer un ignorante durante cinco minutos, quien no pregunta se mantiene ignorante toda la vida.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Muchas gracias, no se me habia ocurrido Very Happy
_________________
Los problemas mas dificiles tienen las soluciones mas sencillas
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

hay un problema, si no haces el commit cuando bloqueas el registro, en realidad no esta bloqueado.... otros usuarios no lo ven como bloqueado... y si haces el commit... pues el mismo problema que el anterior..

mi solucion: poner una utilidad de desbloquear registros que se inicie si no se cierra bien la aplicacion
_________________
Los problemas mas dificiles tienen las soluciones mas sencillas
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

En Firebird 1.5 si se puede bloquear una tupla concreta, pero realmente es un bloqueo pesimista y no deseable, lo mejor como te han aconsejado es el uso de transacciones, de todos modos si usas Firebird podrías hacer esto, aunque no se aconseja del todo su uso... mirate la sentencia SELECT, verás que puedes añadir al final un WITH LOCK.

Yo nunca la he utilizado y como digo, y te han dicho, lo mejor es introducir transacciones, que garantizen un acceso correcto y concurrente a los datos que se estimen oportunos, lo de los bloqueos explicitos es algo ya del pasado y que conviene evitar en la medida de lo posible...

Ciao
_________________
OJO!! Ya tenemos subforo de Bases de Datos!!
Gracias a los admins.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.