IF Abfrage bei CREATE TABLE

  • Hey


    Ich muss aktuell ein SQL Script schreiben.

    Bein einer Tabelle muss eine Zeile BSP "Führerschein" entweder die Klasse des Führerschein (sofern ein Führerschein besteht"

    Oder "false" wenn kein Führerschein besteht.


    Leider weiß ich nicht wie man das umsetzt. Im Netz habe ich auch nichts für mich hilfreiches gefunden.


    Hat einer von euch eine Idee?




    Mit freundlichen Grüßen

    CuzImCloud

  • Bisschen wirre Informationen, um helfen zu können.

    Soll das Script eine Tabelle erstellen? Soll nur eine bestehende Tabelle abgefragt werden?


    Welche Grundlagen liegen vor ( Datenbank, Tabellen, genaue Aufgabenstellung )?

  • Habe ein normales Script erstellt.


    Datenbank erstellt und jetzt soll eine Tabelle erstellt werden.


    Code
    1. CREATE TABLE Kunde (
    2. fuererschein CHAR()
    3. )


    Wenn der Kunde einen Führerschein hat soll dort die Führerschein Klasse eingetragen werden


    Wenn er keinen hat, soll mittels BOOL der Eintrag auf "FALSE" geändert werden.



    Hoffe das ist etwas verständlicher 😅

  • Ja, das ist verständlicher. Macht aber so keinen Sinn.


    Die Angabe der Führerscheinklasse ist ein CHAR oder VARCHAR, je nachdem. FALSE ist aber ein BOOL. Du kannst der Spalte aber nur einen Datentypen zuweisen.

    Alternativ könntest Du NULL anstatt FALSE nehmen, der wäre überall gültig, wo Du es zulässt.


    Ich würde die Tabelle(n) allerdings anders aufbauen.

    Eine Tabelle mit den Kunden, eine mit Führerscheinen und eine zwecks Mapping. Also drei Tabellen sozusagen.

    Jede Tabelle sollte eine AutoIncrement-Spalte als Identifier haben.

    Dann kannst Du in der Mapping-Tabelle diese Ids verwenden, um den Kunden die Führerscheine zuzuweisen.


    Das ganze hat auch den Vorteil, dass Du bei Kunden, die mehrere Führerscheinklassen besitzen keinen String auseinander pflücken musst.