Foros del Web » Programando para Internet » ASP Clásico »

Proteger base de datos

Estas en el tema de Proteger base de datos en el foro de ASP Clásico en Foros del Web. Tengo una duda chicos: En una página web en la que los usuarios suben información, sea la que sea, a una base de datos, hay ...
  #1 (permalink)  
Antiguo 15/02/2005, 06:34
 
Fecha de Ingreso: enero-2005
Mensajes: 114
Antigüedad: 19 años, 4 meses
Puntos: 0
Proteger base de datos

Tengo una duda chicos:

En una página web en la que los usuarios suben información, sea la que sea, a una base de datos, hay que proteger ésta de alguna manera para que no escriban en ella varios usuarios a la vez? Y de ser así, cómo se hace? Muchas gracias!


ALEX
  #2 (permalink)  
Antiguo 15/02/2005, 10:00
Avatar de akela  
Fecha de Ingreso: septiembre-2000
Ubicación: Frente a la compu
Mensajes: 660
Antigüedad: 23 años, 9 meses
Puntos: 2
Al hacer la Base de datos (si es que es de Access) la configuras para que se bloquee de modo "pesimista" esto es que si un usuario la toma, nadie màs la puede ocupar para escribir datos en ella hasta que ese usuario la "suelte"

Esto lo haces en el menù de "herramientas" en access
  #3 (permalink)  
Antiguo 15/02/2005, 10:04
 
Fecha de Ingreso: enero-2005
Mensajes: 114
Antigüedad: 19 años, 4 meses
Puntos: 0
Ok akela, pero otra pregunta, si un usuario está esperando que otro acabe, realmente se queda en espera? O se le echa fuera? Muchas gracias!!


ALEX
  #4 (permalink)  
Antiguo 15/02/2005, 10:13
Avatar de akela  
Fecha de Ingreso: septiembre-2000
Ubicación: Frente a la compu
Mensajes: 660
Antigüedad: 23 años, 9 meses
Puntos: 2
Lo que hace es que le dice que la BD esta ocupada y que no puede utilizarla, que intente mas tarde

esto lo indica con un mensaje de error.
__________________
Si quieres que las cosas sucédan

provocalas!
  #5 (permalink)  
Antiguo 15/02/2005, 10:23
 
Fecha de Ingreso: enero-2005
Mensajes: 114
Antigüedad: 19 años, 4 meses
Puntos: 0
Pero ese mensaje de error se le da directamente al cliente? Lo digo porqué sería interesante redireccionar a éste a una página de cortesía en este caso, y que no viera dicho mensaje de error. Y otra cosa, ¿no es muy bestia el bloqueo pesimista? ¿No sería mejor bloquear sólo el registro que está siendo modificado?


ALEX

Última edición por AlexWeb; 15/02/2005 a las 10:35
  #6 (permalink)  
Antiguo 15/02/2005, 10:34
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 21 años, 9 meses
Puntos: 16
es un errro del driver del al base de datos.
el cual puedes capturar con err.number y on error resume next

checa la biblioteca, ahi hay una funcion que permite (y explica) como manejar errores
  #7 (permalink)  
Antiguo 15/02/2005, 11:36
 
Fecha de Ingreso: enero-2005
Mensajes: 114
Antigüedad: 19 años, 4 meses
Puntos: 0
No, no, a ver me explico un poquito mejor: (la BD es Access)

1.- ¿No sería mejor el bloqueo optimista, para que haya dos usuarios que puedan modificar dos registros diferentes a la vez?

2.- ¿Cuántos usuarios pueden estar simultáneamente conectados a una base de datos en Access?

3.- Si un usuario sobrepasa el máximo de usuarios que os pregunto en la pregunta 2, ¿recibirá un mensaje de error en su navegador? ¿o esperará hasta que pueda entrar?


Muchas gracias!


ALEX
  #8 (permalink)  
Antiguo 15/02/2005, 11:44
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 21 años, 9 meses
Puntos: 16
en RE a 3) si esta en modo pesimista y deseas hacer un update en la BD justo al registro que se esta usando por otro usuario, la palicacion se caera. error 500 y todo eso.
entonces para manejar ese error capturas el error y haces lo que desees hacer.


el bloqueo optimista / pesimista se debe analizar segun el caso.
para la mayoria de las aplicaciones las BD se dejan abiertas optimistamente.
debe ser muy pero muy critico (importante para una organizacion) el sistema para que se use el bloque pesimista. como es el caso de actualizaciones bancarias y cosas asi.
  #9 (permalink)  
Antiguo 15/02/2005, 11:49
 
Fecha de Ingreso: enero-2005
Mensajes: 114
Antigüedad: 19 años, 4 meses
Puntos: 0
Ah vale, es que yo pensaba que el bloqueo optimista te bloqueaba el registro que estaba siendo modificado por otro, y el pesimista toda la tabla. No es así entonces??


ALEX
  #10 (permalink)  
Antiguo 15/02/2005, 11:59
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 21 años, 9 meses
Puntos: 16
hasta donde yose (puede que este equivocado)

optimista significa que la bd asumira que ninguna otra conexion modificara los datos mientras otra conexion liste, updetee o inserte valores en la bd.

la pesimista asumira que es posible que esto ocurra, por lo tanto bloqueara la bd para mantener la integridad de los datos.

en google busca por "optimistic locking" or somthing like that

  #11 (permalink)  
Antiguo 15/02/2005, 19:14
Avatar de akela  
Fecha de Ingreso: septiembre-2000
Ubicación: Frente a la compu
Mensajes: 660
Antigüedad: 23 años, 9 meses
Puntos: 2
Optimista bloquea por registro

pesimista bloquea la tabla completa

y pues como dice Muz, asi se preserva la integridad de los datos.
__________________
Si quieres que las cosas sucédan

provocalas!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:38.