SQL-Abfrage

12/02/2008 - 23:04 von Mario Krsnic | Report spam
Hallo zusammen,
Ich habe zwei Tabelle mit folgender Struktur:
Tabelle1
1) ID (Autowert + Primàrschlüssel)
2) lfd_nr (integer)
3) Feld1 (Text)

Tabelle2
1) ID (Integer)
2) lfd_nr (integer: entspricht einer Personalnummer)
3) Feld1 (Text)

ID aus der ersten und zweiten Tabelle stehen in einer 1:n Beziehung.

Ich möchte jetzt die Sàtze aus der ersten Tabelle wo lfd_nr=1 in die gleiche
Tabelle einfügen mit dem lfd_nr=2. Das geht auch gut mit der Abfrage Insert
into...
Ich möchte aber auch in die zweite Tabelle die Sàtze wo lfd_nr=1 einfügen
mit
dem lfd_nr=2, aber so, dass ID bei den neu hinzugefügten Sàtzen
in der zweiten Tabelle mit dem ID in der ersten übereinstimmt.
Wie soll ich das tun?
Gruss
Mario
 

Lesen sie die antworten

#1 Peter Doering
13/02/2008 - 02:53 | Warnen spam
Hallo,

Mario Krsnic wrote:

Ich habe zwei Tabelle mit folgender Struktur:
Tabelle1
1) ID (Autowert + Primàrschlüssel)
2) lfd_nr (integer)
3) Feld1 (Text)

Tabelle2
1) ID (Integer)
2) lfd_nr (integer: entspricht einer Personalnummer)
3) Feld1 (Text)

ID aus der ersten und zweiten Tabelle stehen in einer 1:n Beziehung.

Ich möchte jetzt die Sàtze aus der ersten Tabelle wo lfd_nr=1 in die gleiche
Tabelle einfügen mit dem lfd_nr=2. Das geht auch gut mit der Abfrage Insert
into...
Ich möchte aber auch in die zweite Tabelle die Sàtze wo lfd_nr=1 einfügen
mit
dem lfd_nr=2, aber so, dass ID bei den neu hinzugefügten Sàtzen
in der zweiten Tabelle mit dem ID in der ersten übereinstimmt.



Wenn ich richtig verstehe, willst du einen Datensatz aus Tabelle1 mit allen
zugeordneten Saetzen aus Tabelle2 kopieren, richtig?

Das geht zwar, ist aber wegen der Autowerte mit einem gewissen Risiko
behaftet, siehe www.donkarl.com?FAQ3.2 . Wenn du den neuen Key kennst,
sollte es mit INSERT auf beide Tabellen keine Probleme geben:

INSERT INTO Tabelle1 ( ID, lfd_nr, Feld1 )
SELECT 2, lfd_nr, Feld1
FROM Tabelle1
WHERE ID=1

INSERT INTO Tabelle2 ( ID, lfd_nr, Feld1 )
SELECT 2, lfd_nr, Feld1
FROM Tabelle2
WHERE ID=1

Gruss - Peter

2. SQL Server-Entwickler-Konferenz
Nürnberg, 12./13.4.2008 + 19./20.4.2008
http://www.donkarl.com/SEK

Ähnliche fragen