SQL Create Table-Anweisung - Mit Beispielsyntax

SQL ist eine der zuverlässigsten und einfachsten Abfragesprachen. Es bietet eine klare Syntax, die sich leicht lesen lässt, ohne zu viel von der Bedeutung der Funktionalität zu abstrahieren.

Wenn Sie einen Verlauf der Sprache sowie einige interessante Fakten wünschen, lesen Sie den Einführungsteil meines Artikels über SQL Update-Anweisungen.  

In diesem Artikel werden wir die wichtigen Teile des Erstellens einer Tabelle in SQL durchgehen. Meine bevorzugte "Variante" von SQL ist SQL Server, aber die Informationen zum Erstellen einer Tabelle sind in allen SQL-Varianten ziemlich allgegenwärtig.  

Wenn Sie noch nie SQL verwendet haben oder nicht wissen, was eine Tabelle ist, fürchten Sie sich nicht! Kurz (und allgemein) ist eine Tabelle ein Datenbankobjekt, das alle Daten in diesem Teil der Datenbank enthält oder enthält. Diese Daten werden in benannten Spalten und nummerierten Zeilen gespeichert, was nicht ungewohnt ist, wenn Sie jemals ein Tabellenkalkulationsprogramm verwendet haben. Jede Zeile repräsentiert einen gesamten Datenbankeintrag.

Wenn die Daten in Kastenform vorliegen würden, wäre eine Tabelle ein Abschnitt des Lagerregals, in dem wir diese Kisten aufbewahren.

Ich vereinfache die Erklärung erheblich und SQL-Tabellen enthalten noch viel mehr, aber das liegt außerhalb des Geltungsbereichs dieses Artikels. Wenn Sie nach einer ausführlicheren Erläuterung der Tabellen suchen, empfehlen wir Ihnen, in die Dokumentation zum Microsoft Database Design einzutauchen.

Bevor wir lernen, wie die Tabelle erstellt wird, ist es wichtig zu lernen, welche Datentypen diese Spalten und Zeilen speichern können.

Datentypen

SQL-Tabellen können Text, Zahlen, eine Kombination aus Text und Zahlen sowie Bilder und Links enthalten.

Bei der Erstellung unserer Tabelle legen wir den Datentyp fest, den die Zeilen und Spalten enthalten sollen. Hier sind die übergeordneten Klassifikationen von Daten:

  • Ungefähre Zahlen
  • Saiten
  • Terminzeit
  • Unicode-Zeichenfolgen
  • Genaue Zahlen
  • Andere

Ich werde im Folgenden einige der am häufigsten verwendeten Datentypen auflisten. Wenn Sie jedoch mehr über alle Datentypen erfahren möchten, lade ich Sie ein, diesen ausführlichen Artikel zu jedem Typ von Microsoft zu lesen.

Hier sind die aus meiner Erfahrung am häufigsten verwendeten Datentypen in keiner bestimmten Reihenfolge:

  • char (size) - Zeichenfolge mit fester Länge, die Buchstaben, Zahlen und Sonderzeichen enthalten kann
  • varchar (Größe) - Zeichenfolge mit variabler Länge, die Buchstaben, Zahlen und Sonderzeichen enthalten kann
  • Boolescher Wert - Null (oder Werte, die 0 entsprechen) ist falsch, Nicht-Null ist wahr
  • int ( Größe optional ) - Eine Zahl mit bis zu 10 Zeichen Länge, die negative und positive Zahlen akzeptiert
  • bigint ( Größe optional ) - Eine Zahl mit bis zu 19 Zeichen Länge, die negative und positive Zahlen akzeptiert
  • float (size, d) - eine Zahl, deren Gesamtzahl durch die Größe und die Anzahl der Zeichen nach der durch d dargestellten Dezimalstelle dargestellt wird
  • Datum - Datum im Format JJJJ-MM-TT
  • Datum / Uhrzeit - Datum Uhrzeit im Format JJJ-MM-TT hh: mm: ss
  • Zeit - Zeit im Format hh: mm: ss

Okay, jetzt, da wir wissen, welche Arten von Daten die Zeilen und Spalten enthalten können, kommen wir zu den lustigen Teilen!

Erstellen einer Tabelle

Bevor wir beginnen, ist es wichtig zu beachten, dass ich alle meine Beispiele unabhängig von einem Programm bereitstellen werde.

Wenn Sie jedoch mit dem Schreiben von Abfragen beginnen möchten und nicht sicher sind, wo Sie anfangen sollen, schauen Sie sich SQL Server Management Studio an. Es ist ein kostenloses, robustes Programm, das in der Community weit verbreitet und unterstützt wird.

Alternativ gibt es verschiedene Optionen, einschließlich DB Fiddle, mit denen Sie Schemas erstellen und Abfragen direkt in Ihrem Browser schreiben können.  

Beginnen wir mit einer einfachen Anweisung, um eine Basistabelle zu erstellen:

CREATE TABLE table_name ( column1_name datatype, column2_name datatype, column3_name datatype, column4_name datatype, column5_name datatype,)

Es gibt andere Parameter, die wir nach dem Hinzufügen datatypeder Spalten hinzufügen können :

  • NOT NULL- Durch Übergeben dieses Parameters wird sichergestellt, dass die Spalte keinen NULLWert enthalten kann
  • UNIQUE - Durch Übergeben dieses Parameters wird verhindert, dass die Spalte mehr als einmal denselben Wert enthält
  • UNIQUE KEY- Wenn Sie diesen Parameter übergeben, wird diese Spalte als eindeutige Kennung festgelegt. Es ist im Wesentlichen eine Kombination der beiden vorherigen Parameter.

Jetzt erstellen wir eine Tabelle (mit dem Namen doggo_info, die den Identifizierungsstandards für Datenbanken entsprechen muss), in der Informationen zu den Bewohnern von Woof Woof Retreat gespeichert sind, einer fiktiven Hundetagesstätte, an die ich gerade gedacht habe :)

CREATE TABLE doggo_info ( ID int UNIQUE KEY, Name varchar(50) NOT NULL, Color varchar(50), Breed varchar(50), Age int, Weight int, Height int, Fav_Food varchar(100), Fav_Toy varchar(100), Dislikes varchar(500), Allergies varchar(500) NOT NULL )

Und hier ist der brandneue Tisch, den wir gerade erstellt haben:

NameFarbeRasseAlterGewichtHöheFav_FoodFav_ToyAbneigungenAllergien

Sie werden feststellen, dass unsere Tabelle vollständig leer ist. Dies liegt daran, dass wir noch keine Daten hinzugefügt haben. Dies würde den Rahmen dieses Artikels sprengen, aber ich wollte, dass Sie sich dieses Leckerbissen bewusst werden.

Erstellen Sie eine Tabelle aus einer vorhandenen Tabelle

Es ist auch möglich, eine neue Tabelle basierend auf einer vorhandenen Tabelle zu erstellen.

Es ist ziemlich einfach und erfordert nicht viel mehr Syntax. Wir müssen die Tabelle und die Spalten auswählen, aus denen "kopiert" werden soll:

CREATE TABLE new_table_name AS SELECT column1, column2, column3, column4 (use * to select all columns to be added to the new_table) FROM current_table_name WHERE conditions_exist

Aus Gründen der Zweckmäßigkeit habe ich unserer doggo_infoTabelle einige Daten hinzugefügt, und es sieht nun wie im folgenden Beispiel aus:

NameFarbeRasseAlterGewichtHöheFav_FoodFav_ToyAbneigungenAllergien
GänseblümchenrotStandard Dackel1146Knabbergebäck mit LachsgeschmackQuetschballVögel fliegen über den HofKatzen, Bäder, Sauberkeit
Chefschwarz / braunRottweiler34117buchstäblich allesSeilschleppervon der Couch bleibenzuhören, sich benehmen, nicht auf alles sabbern
sammieleichter HonigGolden Retriever94619Knabbergebäck mit Rindfleischgeschmackihr Bettwilde Welpenkeine bekannt

Jetzt können wir eine weitere Tabelle basierend auf den Daten in unserer doggo_infoTabelle erstellen, indem wir die folgende Abfrage ausführen:

CREATE TABLE puppies_only AS SELECT * FROM doggo_info WHERE Age < 4

Wir möchten eine neue Tabelle mit allen Spalten aus der doggo_infoTabelle erstellen, jedoch nur dort, wo die AgeZahl kleiner als 4 ist. Nach dem Ausführen dieser Abfrage sieht unsere neue Tabelle folgendermaßen aus:

NameFarbeRasseAlterGewichtHöheFav_FoodFav_ToyAbneigungenAllergien
GänseblümchenrotStandard Dackel1146Knabbergebäck mit LachsgeschmackQuetschballVögel fliegen über den HofKatzen, Bäder, Sauberkeit
Chefschwarz / braunRottweiler34117buchstäblich allesSeilschleppervon der Couch bleibenzuhören, sich benehmen, nicht auf alles sabbern

Ich hoffe, Sie können sehen, wie mächtig diese Aussage sein kann. Mit ein paar Zeilen in unserer Abfrage haben wir im Wesentlichen Daten von einer Tabelle in eine andere kopiert, aber nur die Zeilen, die wir wollten.  

Dies ist nicht nur ein praktisches Werkzeug, das Sie in Ihrem Entwickler-Toolgürtel haben sollten - es spart Ihnen auch unermessliche Zeit, wenn Sie Daten in Tabellen verschieben müssen.

Einpacken

Jetzt, da Sie wissen, wie Sie eine Tabelle in SQL erstellen (oder kopieren), unabhängig davon, in welcher Situation Sie sich befinden, können Sie die Spalten und Zeilen mit zu speichernden Daten füllen!

Die CREATE TABLEAussage ist äußerst nützlich und kraftvoll. Sie sind bereit, es sinnvoll einzusetzen.

Wenn Sie diesen Artikel hilfreich fanden, lesen Sie meinen Blog, in dem ich häufig Artikel über Webentwicklung, Leben und Lernen veröffentliche.

Wenn Sie dort sind, melden Sie sich doch für meinen Newsletter an. Sie können dies oben rechts auf der Hauptblogseite tun. Ich versende ab und zu gerne interessante Artikel (meine und andere), Ressourcen und Tools für Entwickler.

Wenn Sie Fragen zu diesem Artikel haben oder mich allgemein informieren möchten, melden Sie sich bei Twitter oder einem meiner anderen Social-Media-Konten, die Sie unter dem Newsletter finden. Melden Sie sich auf der Hauptseite meines Blogs oder in meinem Profil hier an fCC :)

Habe einen tollen Tag! Viel Spaß beim Lernen und beim Codieren, Freund!