CodeGym /Kurse /SQL SELF /Einführung in Datentypen in PostgreSQL

Einführung in Datentypen in PostgreSQL

SQL SELF
Level 15 , Lektion 0
Verfügbar

Das ist die Vorlesung, mit der wir unseren Kurs eigentlich hätten starten können. Aber dann wären deine ersten Aufgaben und Vorlesungen echt langweilig gewesen. Stell dir vor, du willst mal einen Tag als Bauarbeiter arbeiten – womit würdest du lieber anfangen: erst mal alle Arten und Formen von Ziegeln lernen oder 30 Minuten einen Turmdrehkran steuern? Eben! :)

Ein Schüler ist kein Gefäß, das man einfach nur füllen muss, sondern eine Fackel, die man entzünden sollte (und dabei nicht verbrennen)! Ich versuche nicht, dir alles zu erzählen, was ich weiß, sondern es so zu machen, dass es für dich spannend bleibt. Und genau jetzt ist der perfekte Zeitpunkt, um mit Datentypen loszulegen.

Ein Datentyp in PostgreSQL gibt an, welche Art von Information in einer bestimmten Tabellenspalte gespeichert wird. Zum Beispiel Zahlen, Text oder Daten. Das ist ein bisschen so, wie wenn du eine Kiste zum Aufbewahren auswählst: eine kleine für Kleinkram, eine große für Schuhe, eine durchsichtige für Fäden, damit du sofort siehst, was wo drin ist.

Beispiel:

  • Wenn du das Alter einer Person speichern willst, passt ein numerischer Datentyp.
  • Wenn du einen Namen speichern willst, brauchst du einen Text-Datentyp.
  • Und um das Registrierungsdatum zu speichern, macht ein Datums-Datentyp Sinn.

Wofür braucht man Datentypen?

Datentypen helfen dir dabei:

  1. Eingaben zu begrenzen. Zum Beispiel kannst du keinen Text einfügen, wo eine Zahl erwartet wird.
  2. Daten zu strukturieren. Wenn du genau weißt, was in welcher Spalte steckt, kannst du leichter Abfragen bauen und Infos analysieren.
  3. Ressourcen zu sparen. Mit den richtigen Typen verbrauchst du weniger Speicher.
  4. Genauigkeit zu sichern. Zum Beispiel brauchen Finanzberechnungen Zahlen mit fester Nachkommastelle.

Beispiel zur Inspiration

Stell dir eine Tabelle vor, in der Infos über Studierende gespeichert werden:

id name age enrollment_date
1 Otto Mars 22 2023-01-15
2 Anna Song 19 2023-02-10

Hier ist id ein eindeutiger Bezeichner (Zahl), name ist Text, age ist das Alter als Zahl und enrollment_date ist das Einschreibedatum des Studierenden. Alle diese Daten haben unterschiedliche Datentypen, weil sie verschiedene Aspekte des Objekts beschreiben.

Klassifikation der Datentypen in PostgreSQL

PostgreSQL ist mega flexibel, was Datentypen angeht. Hier kommt eine kurze Übersicht.

Hauptkategorien von Datentypen:

  1. Numerische Typen

    • Zum Speichern von Ganzzahlen (z.B. Menge, ID) und Zahlen mit Nachkommastellen (z.B. Geld).
    • Beispiele: INTEGER, NUMERIC, FLOAT.
  2. Texttypen

    • Zum Speichern von Texten und Strings (z.B. Namen, Adressen).
    • Beispiele: CHAR, VARCHAR, TEXT.
  3. Boolescher Typ

    • Zum Speichern von Wahrheitswerten TRUE (wahr) oder FALSE (falsch).
    • Beispiel: BOOLEAN.
  4. Typen für Datum und Zeit

    • Zum Speichern von Daten, Uhrzeiten oder beidem zusammen.
    • Beispiele: DATE, TIME, TIMESTAMP.
  5. Spezielle Typen

    • Eindeutige IDs, JSON-Objekte, Arrays und vieles mehr.
    • Beispiele: UUID, JSONB, ARRAY.

Besonderheiten der Datentypen in PostgreSQL

PostgreSQL unterstützt eine riesige Auswahl an eingebauten Typen und du kannst sogar eigene (benutzerdefinierte) Datentypen erstellen. Das macht die Arbeit mit diesem DBMS besonders mächtig für komplexe Systeme, wo du spezielle Anforderungen an die Daten hast.

Cool ist auch, dass du in PostgreSQL sogar Geodaten speichern oder Abfragen wie "Finde Cafés im Umkreis von 500 Metern von mir" machen kannst. Für solche Sachen gibt’s spezielle Datentypen.

Was bringt das explizite Angeben von Datentypen?

Manchmal denkt man, es wäre praktisch, einfach alle Spalten als Text zu machen – Text kann ja alles speichern. Aber das ist echt schlechte Praxis! Die passenden Datentypen anzugeben, bringt dir:

Einfachere Abfragen. Wenn PostgreSQL weiß, dass in einer Spalte nur Zahlen stehen, kann es Berechnungen wie SUM() viel schneller machen.

Fehler vermeiden. Stell dir vor, du speicherst aus Versehen "zweiunddreißig" statt 32 in einer Spalte, wo das Alter steht. Solche Fehler zu finden, ist dann richtig schwer.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION