Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MS SQL Server (https://www.clubdelphi.com/foros/forumdisplay.php?f=23)
-   -   Bloquear base de datos (https://www.clubdelphi.com/foros/showthread.php?t=70386)

santi33a 18-10-2010 14:21:08

Bloquear base de datos
 
Hola a todos, tengo una base de datos hecha en SQL Server 2000 sp4, la cual funciona perfectamente, sin embargo me han pedido la posibilidad de que funcione en otros lugares donde no hay comunicación y poder exportar los datos que se introduzcan en esos lugares e importarlos en la base de datos central, ahora ya pensé en la forma de hacer la exportación e importación, pero quisiera que en el momento que hago la importación la Base dato quede bloqueada para todos los demas usuarios que pudieran estar teniendo acceso a ella, todo esto hecho desde delphi, alguien sabe como hacerlo?
Muchas gracias.

ContraVeneno 18-10-2010 16:53:57

Si se puede, pero no creo que sea lo mejor...

Lo más recomendable es que hagas todo sobre la base de datos. SQL Server cuenta con muy buenas herramientas y opciones para poder hacer replicación o envío de información, así como herramientas muy buenas para programar y ejecutar estas tareas.

Claro que se puede hacer desde Delphi, pero ¿para que usar un intermediario cuando el mismo servidor puede ejecutar todos los procesos directamente?.

Saludos.

santi33a 18-10-2010 17:21:26

gracias ContraVeneno, pero la idea es que la importación de los datos la haga alguien q no tenga muchos conocimientos de informatica, es decir un especialista de recursos humanos no de informatica, dame una idea si se te ocurre algo.

Neftali [Germán.Estévez] 19-10-2010 10:15:02

¿Porqué necesitas bloquearla? Yo tampoco creo que sea buena idea.
Tienes una Base de Datos, que a diferencia de otras, te permite hacer determinadas operaciones sin necesidad de bloquear.
Aprovechalo.

¿Hay alguna razón para no hacerlo?

santi33a 19-10-2010 14:26:47

Pensé en eso pues mi idea al importar la información de una empresa era primero borrar toda la existente y luego insertar la nueva, es una operación que creo no consuma mucho tiempo, pero pensaba si alguien hace alguna consulta en ese tiempo a lo mejor no le muestra datos correctos, quizas me esté exigiendo demasiado, jajaja, en fin, si se encontraba como hacerlo lo hacía.
Gracias de todas forma

Neftali [Germán.Estévez] 19-10-2010 14:35:16

Cita:

Empezado por santi33a (Mensaje 379704)
...mi idea al importar la información de una empresa era primero borrar toda la existente y luego insertar la nueva

Creo que sería más correcto actualizar. En él caso de borrar todo sí que te puedes encontrar que en ese momento alguien obtenga resultados incorrectos.

santi33a 19-10-2010 15:08:31

Es que me parece que es mas lento actualizar, es decir comparar lo que ya tengo con lo nuevo para luego actualizar. que tu crees?
Ademas todas las tablas tienen sus Trigger, mi idea era desabilitarlos todos, borrar, llenar la tabla y habilitarlos, son 8 tablas.
Gracias.

Neftali [Germán.Estévez] 19-10-2010 16:23:55

La verdad es que sin conocer más datos del proceso concreto no me atrevo a opinar. Más si hay de por medio Triggers que pueden afectar a las altas/updates.
Si tienes claro que no vas a perder datos, tal vez la opción de borrar e insertar te pueda ser menos problemática.


La franja horaria es GMT +2. Ahora son las 01:35:47.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi