Warum ich mir die Grundlagen von MS SQL Server noch einmal angesehen habe: Ein tiefer Einblick in String-Datentypen

WBOY
Freigeben: 2024-08-30 06:40:35
Original
263 Leute haben es durchsucht

Als ich heute mit meinem Vorgesetzten über PR sprach (es ging um die Abläufe im Laden), stellte mir mein Vorgesetzter ein paar Fragen dazu.

Warum deklarieren Sie beispielsweise den Datentyp der Zeichenfolge als varchar(n) anstelle von nvarchar(n) und anderen szenariobasierten Fragen?

Vielleicht waren Sie auch schon einmal mit einer ähnlichen Situation bei Senioren oder Lehrern an der Hochschule konfrontiert.

Obwohl ich ihm Antworten gab, warf diese Debatte für mich Fragen zu meinen Grundlagen auf.

Und ich habe mich von Anfang an für eine Überarbeitung entschieden.

Beim Überarbeiten sind mir ein paar Punkte aufgefallen, die ich mit euch allen teilen möchte, deshalb schreibe ich diesen Artikel.

Why I Revisited MS SQL Server Basics: A Deep Dive into String Data Types

Fangen wir von vorne an.

Wenn wir eine Datenbank erstellen, werden hinter den Kulissen 2 Dateien generiert.

  1. Datendatei:Diese hat die Erweiterung (.mdf) und wird als primäre Datendatei bezeichnet.
  2. Protokolldatei:Diese hat die Erweiterung (.ldf) und wird als Transaktionsprotokolldatei bezeichnet.

Wir können jedoch konfigurieren, wie viele Dateien generiert werden sollen. Und wenn wir mehr als 2 Dateien konfigurieren, gibt es die dritte Kategorie:

  • Benutzerdefinierte Dateien: und solche, die als sekundäre Datendateien mit der Erweiterung (.ndf) bekannt sind

Wann immer wir eine DB-Transaktion durchführen, wird diese zunächst in der Protokolldatei gespeichert und nach Abschluss der Transaktion in der Primärdatendatei aktualisiert.

Die Standardgröße und die niedrigste Größe jeder Datei beträgt 8 MB. Für die maximale Größe gibt es keine Begrenzung. Und für die Datenbank kann laut Microsoft eine Datenbank bis zu 524 PB groß sein.

Wählen Sie vs. Abfrage drucken

Wenn Sie die Abfrage „Auswählen“ verwendet haben, haben Sie vielleicht auch schon von der Abfrage „Drucken“ gehört.

Lassen Sie uns herausfinden, wann wir welche verwenden sollten.

Grundsätzlich gibt die Abfrage „Auswählen“ die Tabellendaten im Rasterformat zurück, während die Abfrage „Drucken“ Daten als Text zurückgibt.

Wenn wir also eine Operation an Tabellendaten ausführen müssen, verwenden wir die Abfrage „Auswählen“ und meistens zum Drucken von Protokollen oder Fehlern verwenden wir die Abfrage „Drucken“.

Lassen Sie uns nun die beliebteste Frage im Vorstellungsgespräch besprechen.

Why I Revisited MS SQL Server Basics: A Deep Dive into String Data Types

Char gegen Varchar gegen Nvarchar?

Char:

Char speichert maximal8000Zeichen und hält 1 Byte pro Zeichenraum.

  • Wenn wir keine Größe angeben, weist SQL ihr standardmäßig 1 Byte zu und speichert nur ein Zeichen.

  • Wenn wir mehr Eingaben als die definierte Größe machen, werden die Daten automatisch gekürzt.

  • Char folgt derstatischen Speicherzuweisung. Wenn wir also eine Größe von 20 Byte zuweisen und 10 Zeichen speichern, weist SQL weiterhin den gesamten 20-Byte-Speicher zu und die verbleibenden 10 Byte werden als a betrachtet Platzverschwendung.

Varchar:

  • Varchar kannmaximal 2 GBan Daten speichern und 1 Byte pro Zeichenraum halten. Obwohl bis zu8000 BytesDaten in der Tabelle gespeichert werden, wird alles, was darüber hinausgeht, in der Textdatei gespeichert.

  • Vielleicht ist Ihnen in mehreren Artikeln das Limit von 8000 Byte aufgefallen.

  • Um eine Spalte zum Speichern von 2 GB Daten zu deklarieren, können wir varchar(max) verwenden.

  • Varchar folgt derdynamischen Speicherzuweisung. Wenn wir also eine Größe von 20 Byte zuweisen und 10 Zeichen speichern, weist SQL nur 10 Byte Speicher zu und die restlichen 10 Byte werden gespeichert.

Nvarchar:

  • Nvarchar folgt den gleichen Eigenschaften wie Varchar, der einzige Unterschied besteht darin, dass es 2 Bytes zum Speichern eines Zeichens verwendet.

  • weil es Unicode-Standarddaten folgt, um mehrere Sprachen zu unterstützen.
    Und char, varchar folgt den ASCCI-Standarddaten.

Es gibt einen weiteren Datentyp namensText, der jedoch veraltet ist, sodass Sie ihn ignorieren können.

Es gibt einen Artikel, den ich während meiner Recherche sehr nützlich fand. Es enthält detaillierte Informationen zu allen Datentypen.

Weitere Informationen finden Sie hier.

Wenn Sie der Meinung sind, dass ich etwas verpasst habe oder etwas aktualisieren muss, können Sie gerne einen Kommentar abgeben. Es wird mir und unserer Community helfen.

Das obige ist der detaillierte Inhalt vonWarum ich mir die Grundlagen von MS SQL Server noch einmal angesehen habe: Ein tiefer Einblick in String-Datentypen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!