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

Como grabar un registro en una base de datos si hay 2 iguales

Estas en el tema de Como grabar un registro en una base de datos si hay 2 iguales en el foro de ASP Clásico en Foros del Web. Hola a todos, Bueno pues mi consulta va de la siguiente manera: - Tengo creado una página en ASP en la que ingreso datos de ...
  #1 (permalink)  
Antiguo 27/05/2009, 00:11
 
Fecha de Ingreso: mayo-2009
Mensajes: 1
Antigüedad: 15 años, 10 meses
Puntos: 0
Pregunta Como grabar un registro en una base de datos si hay 2 iguales

Hola a todos,

Bueno pues mi consulta va de la siguiente manera:

- Tengo creado una página en ASP en la que ingreso datos de una empresa en un formulario el mismo que me muestra un código de empresa automático de una base de datos Access.
- Pues bien mientras sigo ingresando los datos otra persona ingresa a la misma pagina y quiere ingresar los datos de una segunda empresa ya que el sistema se maneja para que varias personas ingresen datos al mismo tiempo y a el también se le carga el mismo código que tengo yo porque aun no lo he guardado.
- Resulta que la segunda persona guarda el registro antes que yo, el código de empresa de el se guarda antes que el mió y cuando yo quiero guardar mi registro ya no me deja porque el código se duplica.

* Como puedo hacer para que antes que el registro se guarde verifique en la base de datos si este código existe o no, de no existir me permita guardar el código caso contrario me guarde con el siguiente numero.

Se que la explicación es larga pero quiero que se entienda bien cual es mi problema.

De antemano gracias por la ayuda..
  #2 (permalink)  
Antiguo 27/05/2009, 08:07
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 2 meses
Puntos: 146
Respuesta: Como grabar un registro en una base de datos si hay 2 iguales

mmmmm, quizá no he dimensionado el problema ya que se me hace muy simple

Hay dos o tres caminos, uno es que no muestres el potencial código por que efectivamente no sabes si ese es el que le corresponderá, así que lo muestras hasta que ya lo hayas generado.

Otra forma es que el código que le muestras lo apartes en una tabla de códigos temporales (no se si sea progresivo) donde antes de calcular un nuevo código revise en esta tabla los que ya están "apartados" y haga uno efectivamente único, si el usuario cancela la transacción a este código apartado se le coloca un estatus de disponible para que se tome por el siguiente usuario en lugar de generar uno nuevo.

Uno más es que aunque le muestres un código al usuario, si no quieres hacer una búsqueda antes de grabar, hagas la inserción dentro de un while que tenga código de manejo de excepciones y que se ejecute mientras una bandera booleana indique que hay error, cada vez que haya error, generas un código nuevo, y al final le enseñas el código definitivo.

Saludos
  #3 (permalink)  
Antiguo 27/05/2009, 10:47
Avatar de Esfinge02  
Fecha de Ingreso: septiembre-2008
Ubicación: Cd. Victoria Tam
Mensajes: 162
Antigüedad: 16 años, 6 meses
Puntos: 2
Respuesta: Como grabar un registro en una base de datos si hay 2 iguales

pregunta,

por que no antes de insertar verificas que la empresa exista, me imagino que debes de tener varios campos obligatorios, que te sirvan de filtro, y en base a eso inserta y / o actualizar, digo es una idea no siempre funcionan XDXDXD
__________________
La ignorancia es una bendición o un privilegio, yo lo siento programadores
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 17:30.