Frage von diana2307, 32

Java in Sql?

Hallo leider kenne ich mich mit SQL so gar nicht aus, möchte aber gerne eine Datenbank mit Abfrage erstellen.

Ich möchte quasi dass mir das Programm auswirft ob der Ist-Bestand kleiner, gleich dem Soll-Bestand ist. Wenn ja soll er mir diese Medikamente ausgeben entweder mit dem Zwischenschritt über true/false oder eben direkt. Das untere habe ich teilweise koppiert teilweise selbst versucht aber mit Java komme ich leider nicht weit.

SELECT "Medikamentenname" AS "Medikamentenname", "Wirkstoff" AS "Wirkstoff", "Dosierung" AS "Dosierung", "Soll-Bestand" AS "Soll-Bestand", "Ist-Bestand" AS "Ist-Bestand", "Nachbestellen" AS "Nachbestellen" FROM "Medikamentenliste"

if ("Soll-Bestand"<"Ist-Bestand"){ Nachbestellen == true;} else if ("Soll-Bestand"="Ist-Bestand"){ Nachbestellen ==true;} else { Nachbestellen ==false;}

Danke im Vorraus

Antwort
von wotan38, 11

Die Abfrage sieht syntaktisch korrekt so aus (in allen SQL-Umgebungen gleich):

SELECT Medikamentenname, Wirkstoff, Dosierung, 
Soll-Bestand,
Ist-Bestand, Nachbestellen FROM Medikamentenliste

Die Gänsefüßchen gehören weg, das AS ist nur in bestimmten Fällen notwendig, z.B. wenn die Bezeichnung in der Überschrift sich vom Namen der Spalte unterscheidet.

Kommentar von maximilianus7 ,

also für mich sieht das gar nicht so korrekt aus: gänsefüsschen (in mysql: backticks) gehören auch um namen die - grob ausgedrückt -  syntaktische Zeichen enthalten, wie z.b.:   "Soll-Bestand". ohne " wird nämlich die differenz zwischen den (wohl nicht vorhandenen Tabellenfeldern) "Soll" und "Bestand" angefordert.

Kommentar von wotan38 ,

Es muss nicht für Dich korrekt ausschauen, sondern für die Datenbank.

Kommentar von maximilianus7 ,

??? genau das habe ich damit gemeint!

Antwort
von perhp, 22

Kurze Anmerkung zu deinem Aufruf: einige Teile wie "Soll-Bestand" AS "Soll-Bestand" ist unnötig, da man das AS nur einsetzt, wenn man den Tablenamen umändern möchte. Folglich sieht dein Aufruf so aus:

Select 'Medikamentenname', 'Wirkstoff', 'Dosierung', 'Soll-Bestand', 'Ist-Bestand', 'Nachbestellen'' From 'Medikamentenliste'  <= Syntax wurde jetzt nicht auf die korrektheit überprüft.


Wenn du mit Java einen SQL-Aufruf machen willst, brauchst du den JDBC Driver.

Antwort
von chxxxxy, 20

Hast du schon die tables? ..und willst du mit java auf die Datenbank? oder ein simples select?

Keine passende Antwort gefunden?

Fragen Sie die Community