Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 05-06-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Hola newgeek.

En primer lugar quiero darte la Bienvenida al foro y una merecida felicitación, son muy pocos los usuarios que se informan como usar las etiquetas sql y explicar detalladamente su problema en su primer mensaje en el foro.

Teniendo en cuenta lo dicho por Neftali, podrías crear un procedimiento almacenado que se encargue de la inserción:

Código SQL [-]
CREATE PROCEDURE Inserta_detalles(
    IDtabla1 INTEGER,
    IDtabla2 INTEGER)
AS
begin
  INSERT INTO Tabla3 ( null, id, id2) 
  values ( :IDtabla1, :IDtabla2)
end

puedes llamar a este SP de dos formas:
- Con un query:
Código Delphi [-]
  query1.sql.text := 'execute procedure inserta_detalles( :tabla1, :tabla2)';
  query1.parambyname('tabla1').ASInteger := strtoint(edit1.text); // id de la tabla1
  query1.parambyname('tabla2').ASInteger := strtoint(edit2.text); // id de la tabla2
  query1.ExecSql; // hacemos la inserción.

- Con un componente Store Procedure (lo tendrás en la paleta de delphi, será un TIBStoreProcedure, TMDOStoreProcedure, etc), en el inspector de objetos añades el nombre del procedimiento, y asignas los parámetros en tiempo de ejecución, (mira la ayuda, lo explicará mejor que yo ).

Como habrás visto, en el cuerpo de Inserta_detalles, se envía un null a su clave primaria, para que no obtengas error, deberás tener un trigger before insert para la tabla 3:
Código SQL [-]
CREATE TRIGGER tabla3_BI FOR tabla3
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.idd IS NULL) THEN
    NEW.idd = GEN_ID(GEN_tabla3_IDD,1);
END

GEN_tabla3_idd será un generador creado a tal efecto.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
 



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como resuelvo este error "Temporary table resource limit" fredy_boots Conexión con bases de datos 3 29-10-2014 12:53:01
Como resuelvo este problema?? danytorres Varios 7 26-04-2005 22:36:27
como resuelvo este error? Ryu Internet 3 18-04-2005 19:10:39
¿Cómo puedo hacer el Modelo Entidad-Relación (MER) de un Sistema de Inventario? Grimmy80 Conexión con bases de datos 2 27-09-2003 06:37:12
¿Cómo puedo hacer el Modelo Entidad-Relación (MER) de un Sistema de Inventario? Grimmy80 Conexión con bases de datos 2 24-09-2003 22:06:58


La franja horaria es GMT +2. Ahora son las 10:19:19.


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
Copyright 1996-2007 Club Delphi