PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Insert Statement für 2(oder mehr Tabellen)



michael.becker
27-01-2006, 09:51
Hallo,

ich habe eine frage, doch ich habe irgendwie das ungute gefühl, das ich mich damit als ziemlicher SQL anfanger oute:

Ich habe in diesem beispiel 3 Tabellen
Arbeit: (Arbeit_ID , Titel, Author_ID, Betreuer_ID)
Author: (Author_ID , Vorname, Nachname)
Betreuer: (Betreuer:_ID, Vorname, Nachname, Dienstnummer)

In Arbeit sind natürlich die Author_ID und Betreuer_ID Fremdschlüssel


Jetzt möchte ich gern via Frontend eine Maske bieten, in die man die Oben angebenen Sachen eingibt...und auf Submit soll das dann auch direkt in die Datenbank geschrieben werden.

Muss ich jetzt in 3 Schritten das in die DB schreiben? (also erstmal Betreuer, dann Author und zuletzt die IDs der beiden wieder SELECTen und mit in Arbeit schreiben?)

Geht das nicht auch in einem Schritt??

Und was ist wenn der Betreuer oder Author schon existiert??

Wäre echt dankbar wenn mir da einer helfen könnte

mwanaheri
27-01-2006, 10:58
Die drei Schritte fallen nur an, wenn ein neuer Autor bei einem neuen Betreuer eine neue Arbeit abliefert. Dann musst du allerdings drei Speichervorgänge nehmen.
Es empfiehlt sich, Autor und Betreuer auswählbar zu machen und nur bei Bedarf das neu anlegen anzubieten. Sonst besteht insbesondere die Gefahr, dass der eigentlich gleiche Autor bei jeder Arbeit neu angelegt wird.