In der modernen Welt gibt es großedie Anzahl der Werkzeuge und Technologien zum Speichern von Informationen. Eine der häufigsten Arten sind Datenbanken, die mit verschiedenen Managementsystemen arbeiten. Diese Speichermethode setzt voraus, dass alle Daten klar strukturiert und in speziellen Tabellen aufgeführt sind. Sie bestehen wiederum aus Attributspalten eines bestimmten Datentyps.
Datentyp - was ist das?
Heute gibt es mehrere Definitionendas Konzept des Begriffs "Datentyp" zu erklären. Jeder von ihnen hat jedoch eine gemeinsame Bedeutung. Daher kann der Datentyp herkömmlich als eine Datengruppe bezeichnet werden, die durch ihre Werte (Zeichen, Zahlen usw.) sowie durch die auf die betrachteten Werte angewendeten Operationen gekennzeichnet ist.
Сфера применения типов данных многогранна.Sie dienen nicht nur zum Speichern von Informationen, sondern auch zum Programmieren zur Lösung verschiedener Probleme. Beim Entwerfen von Programmen ist die Praxis, eigene Datentypen mit bestimmten Operationen zu entwickeln und zu verwenden, weit verbreitet. Die Benutzerbasis basiert jedoch immer auf grundlegenden Datentypen. Der SQL-Standard basiert ebenfalls auf der Verwendung der gebräuchlichsten Basistypen, jedoch mit einer Reihe spezifischer Zusätze.
Datentypklassifizierung
Die Gruppierung der Daten nach Typ erfolgte vor langer Zeit undwurde durch die Notwendigkeit verursacht, Informationen für eine bequemere Verarbeitung zu strukturieren. Derzeit werden zwei Datentypen als Basis verwendet: Zeichen und Zahlen.
Auf dieser Grundlage wurde eine moderne Klassifikation entwickelt, die Zeiger, logische, Ganzzahl-, Gleitkommazahl- und Zeichenfolgendatentypen umfasst. SQL-Die Klassifizierung deckt alle oben genannten Punkte ab. Für einige moderne DBMS gibt es jedoch zusätzliche Add-Ins. Dazu gehören Oracle und MySQL.
Basisdatentypen
Datentypen, die zum Erstellen von Attributen von Tabellen verwendet werden, die den Standards der SQL-Sprache entsprechen, sind in 4 Klassen unterteilt:
- String-Werte;
- Fraktionen;
- ganzzahlige Werte;
- Datums- und Uhrzeitwerte.
String-Datentyp
Mit der ersten Wertegruppe können Sie alle als Symbole dargestellten Daten speichern.
Dies können Sonderzeichen, Zahlen und seinBuchstaben, die in jeder SQL-Abfrage als Zeichenfolgen verarbeitet werden. Die Datentypen, deren Tabelle unten aufgelistet ist, bilden die erste Gruppe.
CHAR (Größe) | Wird zum Speichern von Strings verwendet. Mit dem Parameter in Klammern können Sie die Länge der gespeicherten Zeichenfolge festlegen. Die maximale Anzahl von Bytes, die für eine Zeichenfolge festgelegt werden kann, beträgt 255. |
Varchar (Größe) | Ähnlich wie beim vorherigen Typ können Sie speichernZeilen mit bis zu 255 Zeichen. Der Unterschied zu CHAR besteht jedoch darin, dass die erforderliche Speichermenge zum Speichern von Werten dieses Typs zugewiesen wird. Das heißt, eine aus 5 Zeichen bestehende Zeichenfolge erfordert 6 Byte Speicher. Im ersten Fall wird der Speicher für den Wert gemäß dem angegebenen Parameter zugewiesen. |
KLEINER TEXT | Wird zum Speichern von Zeichenfolgendaten mit bis zu 255 Zeichen verwendet. |
TEHT | Dient zum Speichern von Textinformationen, deren Größe 65.535 Buchstaben nicht überschreitet. |
Klecks | Der betrachtete Datentyp ist dem TECT-Typ und ähnlichDamit können Sie in der Datenbank Textinformationen speichern, deren Anzahl 65.535 Zeichen erreichen kann. In der Praxis werden jedoch Audiodaten, Bilder, elektronische Dokumentation usw. gespeichert. |
MITTELTEXT | Es wurde auf Basis des TEXT-Typs entwickelt, ermöglicht jedoch die Speicherung von mehr Daten aufgrund der bis zu 16.777.215 Buchstaben oder Zeichen. |
MEDIUM BLOB | Es dient zum Speichern elektronischer Dokumente in der Datenbank, deren Größe 16.777.215 Zeichen nicht überschreitet. |
LANGER TEXT | Es ist funktional ähnlich zu den vorherigen Typen, jedoch mit einer erhöhten Speicherkapazität von bis zu 4 Gigabyte. |
LANGER BLOB | Ermöglicht das Einfügen in die Datenbank großer Volumes (4 294 967 295 Zeichen). |
ENUM (a, b, c usw.) | Специальный тип данных, использующийся для Einstellen einer Liste möglicher Werte. Hier können Sie 65535 Werte angeben. Die Zeichenfolgen des betreffenden Typs können den einzigen in der Gruppe angegebenen Wert annehmen. Wenn Werte hinzugefügt werden, die nicht in der angegebenen Liste enthalten sind, werden leere Werte in die Tabelle geschrieben. |
SET | Gibt einen Satz gültiger Werte an.Im Gegensatz zum vorherigen Typ werden 64 Parameter verwendet, die mit einem oder mehreren Elementen der angegebenen Argumente initialisiert werden können. |
Tabelle der fraktionellen Datentypen
Zum Speichern werden fraktionierte SQL-Datentypen verwendetFließkommazahlen. In der Praxis werden in der Regel verschiedene Finanzindikatoren festgelegt. Übernehmen Sie je nach geforderter Genauigkeit eine der drei vorgestellten:
FLOAT (Größe, d) | Ermöglicht die Eingabe von Nachkommastellen der angegebenen Genauigkeit |
DOUBLE (Größe, d) | Zum Speichern von Bruchzahlen mit binärer Genauigkeit. |
DECIMAL (Größe, d) | Speicherung von Bruchwerten als Zeichenketten. |
Bei Bankberechnungen erreicht die Genauigkeit des Bruchteils beispielsweise 8 oder 10 Zeichen. Die ersten beiden Typen können nicht in diesen Bereich einbezogen werden.
Speicherung von Finanzkennzahlen in Form von Zeilenerleichtert die Lösung vieler Probleme. Wenn Sie sich mit finanziellen Problemen befassen oder verschiedene SQL-Operationen ausführen, ist die Konvertierung von Datentypen von größter Bedeutung. Entwickler müssen die Art der Speicherung und Verarbeitung berücksichtigen, damit die Daten immer unverändert bleiben.
Integer-Datentyp
Ganzzahlen - eine separate Zahlengruppe, die eine der Hauptklassen bildet. SQL Integer-Datentypen basieren auf der Verwendung des grundlegenden INTEGER-Typs mit einigen Erweiterungen seiner Eigenschaften.
Int (Größe) | Speichern ganzer Werte, die einen Bereich bilden [-231; 231-1ch |
TINYINT (Größe) | Speichert Zahlen von -128 bis 127 |
SMALLINT (Größe) | Zeichnet sich durch einen erweiterten Bereich von gespeicherten Werten von -32.768 auf 32.767 aus. |
MEDIUMINT (Größe) | Dient zum Speichern von Zahlen von -223 bis zu 223-1 |
BIGINT (Größe) | Deckt eine Reihe von ganzen Zahlen ab -2 ab63 und endet 263-1 |
Die Wahl des richtigen Datentyps kann erheblich seinSparen Sie Speicher und reduzieren Sie die Serverzeit, wenn Sie die erforderlichen SQL-Abfragen ausführen. Datentypen bzw. deren Bereich bestimmen den erforderlichen Speicherplatz.
Daher ist es wichtig, dass Datenbankentwickler daran denkenDie Verwendung großer Bereiche für Attribute führt zu erhöhten Speicherkosten. Es ist notwendig, die zu lösenden Probleme klar zu analysieren und Fälle zu identifizieren, in denen die ungefähre Reichweite bekannt ist und die Bedingung für die Verwendung von vorzeichenbehafteten Zahlen festgelegt ist. Wenn der Bereich der verwendeten Argumente klein ist und alle Zahlen positiv sind, ist es richtiger, den vom UNSIGNED-Attribut gebildeten vorzeichenlosen Typ zu verwenden.
Datums- und Uhrzeitdatentypen
Beim Erlernen der Grundlagen von SQL sind Datentypen für Datum und Uhrzeit von besonderem Interesse.
Die Verwendung der folgenden Typen bietet zusätzliche Vorteile beim Entwurf zeitkritischer Systeme.
DATUM | Der Hauptzweck besteht darin, das Datum im Format zu speichernJAHR-MONAT-TAG ("JJJJ-MM-TT" oder "uuuu-mm-dd"). Werte werden normalerweise durch "-" getrennt, aber jedes andere Zeichen als Zahlen kann als Trennzeichen verwendet werden. |
ZEIT | Ermöglicht die Eingabe temporärer Werte in eine Tabellenzelle. Alle Werte sind im Format "hh: mm: ss" angegeben. |
TERMINZEIT | Kombiniert Funktionen der beiden vorherigen Typen. Das Speicherformat wird wie folgt dargestellt: "yuyu-mm-dd hh: mm: ss". |
TIMESTAMP | Speichert Datum und Uhrzeit als die Anzahl der Sekunden, die von Mitternacht am 01.01.1970 bis zum angegebenen Wert vergangen sind. |
JAHR (M) | Dient zum Speichern von Jahreswerten im zwei- oder vierstelligen Format. |
Was müssen Sie noch wissen?
Alle diese Datentypen werden von Microsoft detailliert systematisiert. SQL-Datentypen werden von ihr detaillierter entwickelt.
Zum Beispiel hat das Unternehmen detailliert angegeben, wie vielSpeicher in Bytes wird jedem Typ zugewiesen. Nachdem die verfügbaren Informationen untersucht wurden, ist es für Entwickler einfacher, die Struktur von Tabellen und der gesamten Datenbank basierend auf den Hardwarefunktionen des Servers zu entwerfen.
Spezieller Zeiger - NULL
Manchmal, wenn die Datenbank gefüllt wird,Eine Situation, in der beim Hinzufügen eines Datensatzes zu einer Tabelle keine Informationen in alle Spalten eingegeben werden müssen. Hierzu wird ein spezieller Nullzeiger verwendet - NULL, die als Hilfeverwendet die SQL-Sprache. Spaltendatentypen, die nicht ausgefüllt werden müssen, werden beim Erstellen von Tabellen mit einem Operator angegeben, um Nullwerte zu aktivieren. Ansonsten der Betreiber NULL mit zusätzlichem Aufsatz NICHT kann verwendet werden, um die obligatorische Füllung aller Werte anzuzeigen.
Zeiger NULL hat keinen Typ, sondern zeigt einfach auf einen leeren Wert in Datenbanktabellen. Daher kann es mit jedem der oben genannten Typen kombiniert werden.