# Effektive Methode zum durchsuchen von SQL-Datenbanken



## gast01 (9. Okt 2008)

Hallo,

Ich habe folgende Tabellen in einer Datenbank:




```
Tabelle "Mitarbeiter":

id   |  Vorname   |  Nachname
1        Max          Muster
...        ...              ...



Tabelle "Zwischenfall":

id  |   Ereignis  |  Mitarbeiter_id
1       Unfall             1
```

Es gibt also ein Formular, in welchem Zwischenfälle (Arbeitsunfälle,...) eingetragen werden können.
In diesem Formular wird angegeben, was passiert ist, und wer daran beteiligt war(Mitarbeiter).

Nach abschicken des Formulars werden die Daten des Mitarbeiters zuerst in die Mitarbeiter-Tabelle eingetragen.
Dann wird die id des beteiligten Mitarbeiters in der Tabelle Mitarbeiter gesucht, und in die Tabelle Zwischenfall eingetragen.

Nur wie dursucht man eine Tabelle am Besten, wenn man Vorname und Nachname des Mitarbeiters kennt, und die id herausfinden will?

Es wird also z.B Max Muster per Formular übergeben,...und nun möchte ich herausfinden, welche id dieser Name in der Tabelle Mitarbeiter hat.

Danke für die Hilfe!


----------



## maki (9. Okt 2008)

Ein SELECT Statement wäre ein guter Anfang.

SELECT id FROM mitarbeiter 
WHERE vorname = 'Hans'
AND nachname = 'Dampf'

Solltest unbedingt englische Tabellen- und Spaltennamen verwenden, sonst wird das ganze schnell zum schlimmsten Denglisch wie du siehst.


----------



## Guest (9. Okt 2008)

Wie implementiert man solche Befehle am Besten in Java?


----------



## maki (9. Okt 2008)

Am besten gar nicht sondern nimmt einen ORM wie Hibernate bzw. JPA/Hibernate, oder falls diese zu kompiliziert sind ein einfacheres SQL Mapper Framework wie iBatis.

Wenn du alles zu Fuss machen willst ist JDBC das richtige.


----------



## Guest (9. Okt 2008)

Bin leider zu Fuß unterwegs.
Also mit JDBC


----------



## bronks (9. Okt 2008)

Anonymous hat gesagt.:
			
		

> ... Also mit JDBC


Das wäre auch meine Empfehlung gewesen.


----------



## Guest (10. Okt 2008)

Mal angenommen es wurde eine Verbindung mit der benötigten Datenbank per JDBC hergestellt. In dieser Datenbank befinden sich 7 Tabellen, von denen 4 folgende Struktur haben:


```
Tabelle Mitarbeiter
id     |     Vorname     |     Nachname
1              Max                  Muster
2              Hans                 Irgendwie
3              Lisa                  Somehow

Tabelle Arbeitsunfall
id     |     Ereignis
1           Beinbruch
2           Kopfverletzung
3           blutende Wunde

Tabelle Risikostufe
id     |     Risiko
1            hoch
2            mittel
3            niedrig
```



Nun besteht eben die Möglichkeit, per Formular Daten anzugeben. Gibt also z.B der Benutzer folgendes an:

Mitarbeiter: Hans Irgendwie
Arbeitsunfall: Kopfverletzung
Risikostufe:  mittel

Dann soll jetzt zu jedem dieser eingegebenen Daten die dazugehörige id in der jeweiligen Tabelle gesucht werden.
Wenn man dann alle id's herausgefunden hat, dann sollen diese in die "Haupttabelle" eingetragen werden:


```
Tabelle Zwischenfaelle
id     |   Mitarbeiter_id     |     Arbeitsunfall_id     |     Risiko_id
1               2                            2                         2
```

Wie löst man diese Aufgabe am Besten?
Suche jetzt keinen, der mir hier eine fertige Funktion gibt, sondern bin für jeden Tipp, der mich auf den richtigen Weg führt, dankbar.


----------



## FArt (10. Okt 2008)

http://www.google.de/search?hl=de&q=tutorial+jdbc&btnG=Google-Suche&meta=

http://www.google.de/search?hl=de&q=tutorial+sql&btnG=Suche&meta=


----------

