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 02-07-2005
Patricio Patricio is offline
Miembro
 
Registrado: jul 2004
Posts: 433
Poder: 20
Patricio Va por buen camino
Arrow Insertar en dos tablas distintas al mismo tiempo

Hola a todos quisiera hacer una consulta:

Yo trabajo con Delphi 5 y Interbase

Yo tengo una base de datos por ejemplo llamada Base, y dos tablas llamadas Tabla1 y Tabla2. El codigo que utilizo para insertar datos es el siguiente

Base.StartTransaccion
Tabla1.Insert
AsignarDatos(Tabla1)
Tabla1.Post
Base.Commit

Ahora mi pregunta es que pasa si al mismo tiempo un usuario en una maquina quiere agregar en la tabla1 y otro en la tabla2. Hay alguna forma mejor de hacerlo?

Saludos
Responder Con Cita
  #2  
Antiguo 02-07-2005
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Checa esto....

Te recomiendo que hagas la Inserción y la Aplicación de la Transacción al Finalizar X Captura, ahora, si quieres evitar que 2 ó más usuarios quieran Modificar 1 mismo registro uno de ellos les disparará la famosa excepción de bloqueo de registro ó bien se esperará a que se desocupe dicho registro, esto ocurrre dependiendo del Nivel de Aislamiento que tengas en la Transacción Wait ó No Wait, ahora como te entendí que quieres Insertar 2 Tablas al Mismo Tiempo podrías dejarlo como lo tienes ó bien Crea un Procedimiento Almacenado que Haga las 2 inserciones pasandole los Parámetros Pertinentes a los campos de las 2 Tablas....

Espero te haya ayudado ó metido más dudas....

Saludos....
Responder Con Cita
  #3  
Antiguo 04-07-2005
Patricio Patricio is offline
Miembro
 
Registrado: jul 2004
Posts: 433
Poder: 20
Patricio Va por buen camino
Gracias

Bueno gracias por tu respuesta, como es ese tema del wait, tendras algun ejemplo, que pasa si hago algo asi

while Base.InTransaccion
do
a := a + 1

es decir cualquier sentencia para que lo haga esperar

Muchas Gracias y Saludos
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


La franja horaria es GMT +2. Ahora son las 15:17:35.


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