Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Insertar datos en 2 tablas, ayudaa (https://www.clubdelphi.com/foros/showthread.php?t=59522)

einarcito 29-08-2008 21:52:33

Insertar datos en 2 tablas, ayudaa
 
Holaa gente como va. Necesito sacarme unas dudas, como tengo q hacer para cargar los datos en una tabla que esta normalizada? osea ya normalizada la entidad me quedan al final 2 tablas, la tabla 1 tiene id(como clave primaria), nombre, apellido, y la tabla 2 tiene como id_C(clave foranea) telefono_1 y telefono_2, como seria la sentencia en sql para que me cargue los datos en las dos tablas?....

maeyanes 29-08-2008 21:56:39

Hola...

Tienes que usar join:

Código SQL [-]
select tb1.campo1, tb1.campo2, tb2.campo1, tb2.campo2 from tabla1 tb1
  join tabla2 tb2 on tb2.id_foraneo = tb1.id


Saludos...

felipe88 29-08-2008 21:57:25

Pos... yo no entendi :confused:... podrias explicarte mejor, ¿dices insertar o consultar?

Caral 29-08-2008 21:58:45

Hola
Que yo sepa se hace con dos insert seguidos.
Lo que no entiendo es por que hacer dos tablas para mantener informacion tan relacionada y tan pequeña?.
Saludos

einarcito 29-08-2008 21:59:33

carga de datos en tablas normalizadas
 
perfecto osea q siempre que tenga una tabla normalizada tengo q usar join??? y referirme mas o menos de la manera que lo haces tu??? gracias

einarcito 29-08-2008 22:00:19

tablas normalizadas
 
osea digamos q es solo un modo de ejemplo para que se puede tener una mejor vision de lo quiero hacer... Como seria con dos insert???? gracias

maeyanes 29-08-2008 22:00:36

Hola...

Si te refieres con cargar datos a guardar datos en la tabla, eso ya es otra cosa...

Necesitas primero guardar los datos de la tabla padre y luego de los de la tabla hija... esto podrías hacerlo desde un procedimiento almacenado...


Saludos...

Caral 29-08-2008 22:01:11

Hola
Ahora si que me perdi, el titulo dice insertar y el caso es mostrar.
Que cosas.
Saludos

felipe88 29-08-2008 22:02:09

O dos insert como dice Caral... para la consulta si es trabajo de Indiana Joins :D

maeyanes 29-08-2008 22:03:26

Cita:

Empezado por Caral (Mensaje 310321)
Hola
Ahora si que me perdi, el titulo dice insertar y el caso es mostrar.
Que cosas.
Saludos

Creo que el error fue mio, no leí bien el título solo la explicación que dio...

Caral 29-08-2008 22:03:38

Hola
Cita:

Empezado por felipe88 (Mensaje 310322)
Indiana Joins :D

:D:D:D:D
Esta buena esa.
Saludos

einarcito 29-08-2008 22:03:55

tablas normalizadas
 
osea vamos de nuevo, tengo un form si? donde tengo 5 Tedit, perfecto? tengo dos tablas tabla 1 y tabla2 relacionadas, quiero guardar los datos nada mas... como seria la sentencia en sql... Gracias

Caral 29-08-2008 22:05:51

Hola
Cita:

Empezado por einarcito (Mensaje 310325)
osea vamos de nuevo, tengo un form si? donde tengo 5 Tedit, perfecto? tengo dos tablas tabla 1 y tabla2 relacionadas, quiero guardar los datos nada mas... como seria la sentencia en sql... Gracias

:D:D:D:D
Ahora que hacemos amigo maeyanes.:confused::D
Saludos

maeyanes 29-08-2008 22:08:15

Hola...

El problema es que para hacer esto primero debes tener el valor del ID de la tabla padre, es por eso que se necesitan dos inserts, pero ahí no termina la cosa, por que necesitas poder obtener el ID de la tabla padre para guardarlo en el campo de relación de la tabla hijo...

Ahora, tampoco nos has dicho en que base de datos trabajas...



Saludos...

maeyanes 29-08-2008 22:09:24

Cita:

Empezado por Caral (Mensaje 310326)
Hola

:D:D:D:D
Ahora que hacemos amigo maeyanes.:confused::D
Saludos

Pues depende mucho del motor de base de datos, y de los componentes de acceso que está utilizando... :D :D


Saludos...

einarcito 29-08-2008 22:11:31

tablas normalizadas
 
estoy trabajando con el sql server 2000, como seria entonces obtener el id del padre estoy un poco perdido nunca he trabajado con tablas relacionadas siempre con una tabla que mantiene todos los datos, Ahora bien me podrias ayudar con esos dos inserts o la manera de insertar estos datos. Gracias

egostar 29-08-2008 22:13:21

Yo creo que deberiamos de comenzar por saber la estructura de las dos tablas, de esa forma sabremos si con solo 5 edit's es suficiente para cargar los datos a las tablas.

Salud OS

einarcito 29-08-2008 22:15:27

tablas normalizadas
 
tabla1: id(primaria), nombre, apellido, tabla2: id(foranea), telefono 1, telefono 2...son edit, para el id, nombre, apellido, telefono 1 y telefono 2.

Caral 29-08-2008 22:18:46

Hola
A ojo:D
Código Delphi [-]
QTemp.SQL.Text := 'Insert Into MiTabla1 (Id, nombre, apellido) '+
                          'Values (' +Edit1.Text+', '+Edit2.Text+', '+Edit3.Text')'
QTemp.ExecSQL;
QTemp.SQL.Text := 'Insert Into MiTabla2 (id_C, telefono_1, telefono_2) '+
                          'Values (' +Edit4.Text+', '+Edit5.Text+', '+Edit6.Text')'
QTemp.ExecSQL;
Saludos

egostar 29-08-2008 22:21:53

Cita:

Empezado por Caral (Mensaje 310334)
Hola
A ojo:D
Código Delphi [-]
QTemp.SQL.Text := 'Insert Into MiTabla1 (Id, nombre, apellido) '+
                          'Values (' +Edit1.Text+', '+Edit2.Text+', '+Edit3.Text')'
QTemp.ExecSQL;
QTemp.SQL.Text := 'Insert Into MiTabla2 (id_C, telefono_1, telefono_2) '+
                          'Values (' +Edit4.Text+', '+Edit5.Text+', '+Edit6.Text')'
QTemp.ExecSQL;
Saludos

Hey amigo, ya te sobraron Edit's :D:D:D

Código Delphi [-]
QTemp.SQL.Text := 'Insert Into MiTabla1 (Id, nombre, apellido) '+
                          'Values (' +Edit1.Text+', '+Edit2.Text+', '+Edit3.Text')'
QTemp.ExecSQL;
QTemp.SQL.Text := 'Insert Into MiTabla2 (id_C, telefono_1, telefono_2) '+
                          'Values (' +Edit1.Text+', '+Edit4.Text+', '+Edit5.Text')'
QTemp.ExecSQL;

Salud OS


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

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