Articles

SQL Create TABLE Statement – z przykładową składnią

SQL jest jednym z najbardziej niezawodnych i prostych języków zapytań. Zapewnia czytelną składnię, która czyta się łatwo bez abstrakcji zbyt wiele znaczenia funkcjonalności.

Jeśli chcesz trochę historii na temat języka, a także kilka interesujących faktów, sprawdź część wstępną mojego artykułu SQL Update Statement.

w tym artykule omówimy ważne części tworzenia tabeli w SQL. Moim preferowanym „smakiem” SQL jest SQL Server, ale informacja o tworzeniu tabeli jest dość wszechobecna we wszystkich odmianach SQL.

Jeśli nigdy nie używałeś SQL lub nie wiesz co to jest tabela, nie bój się! W skrócie (i ogólnie) tabela jest obiektem bazy danych, który przechowuje lub zawiera wszystkie dane w tej części bazy danych. Przechowuje te dane w nazwanych kolumnach i ponumerowanych wierszach, które nie są nieznane, jeśli kiedykolwiek używałeś żadnego programu do arkuszy kalkulacyjnych. Każdy wiersz reprezentuje cały rekord bazy danych.

gdyby dane były w formie pudełkowej to tabelka byłaby sekcją regałów magazynowych, w których przechowujemy te pudełka.

Zdjęcie Nany Smirnova na Unsplash

znacznie upraszczam wyjaśnienie i jest o wiele więcej do tabel SQL, ale to jest poza zakresem tego artykułu. Jeśli masz ochotę na bardziej szczegółowe wyjaśnienie tabel, zachęcam do zanurzenia się w dokumentacji Microsoft Database Design.

zanim nauczymy się tworzyć tabelę, ważne jest, abyśmy dowiedzieli się, jakie typy danych mogą przechowywać te kolumny i wiersze.

typy danych

tabele SQL mogą zawierać tekst, liczby, kombinację tekstu i liczb, a także obrazy i łącza.

tworząc naszą tabelę, określamy typ danych, które będą posiadać jej wiersze i kolumny. Oto nadrzędne klasyfikacje danych:

  • przybliżone liczby
  • ciągi
  • data & czas
  • ciągi znaków Unicode
  • dokładne liczby
  • Inne

poniżej wymienię niektóre z najczęściej używanych typów danych, ale jeśli chcesz dowiedzieć się więcej o wszystkich typach danych, zapraszam do zapoznania się z tym wyczerpującym artykuł o każdym typie firmy Microsoft.

oto najczęściej używane typy danych z mojego doświadczenia, w żadnej konkretnej kolejności:

  • char(size) – łańcuch o stałej długości, który może zawierać litery, cyfry, znaki specjalne
  • varchar(size) – łańcuch o zmiennej długości, który może zawierać litery, cyfry,& znaki specjalne
  • boolean – Zero (lub wartości równe 0) jest fałszywe, niezerowe jest prawdziwe
  • int(size opcjonalne)-Liczba o długości do 10 znaków, akceptuje ujemne& liczby dodatnie
  • bigint(rozmiar opcjonalny) – Liczba o długości do 19 znaków, akceptuje ujemne& liczby dodatniers
  • float(rozmiar, d) – Liczba o całkowitej wielkości liczbowej reprezentowanej przez size i ilość znaków po przecinku reprezentowanych przez D
  • date – data w formacie YYY-MM-DD
  • datetime – Data Czas w formacie YYY-MM-DD hh:mm:ss
  • time – Czas w formacie hh:mm:ss

dobrze, teraz, gdy wiemy, jakie typy danych mogą zawierać wiersze i kolumny przejdźmy do zabawnych części!

Tworzenie tabeli

Zdjęcie Nikhila Mitry na Unsplash

zanim zaczniemy, ważne jest, aby pamiętać, że będę dostarczał wszystkie moje przykłady niezależne od jakiegokolwiek programu.

Jeśli jednak chcesz zacząć pisać zapytania i nie wiesz od czego zacząć, zajrzyj do SQL Server Management Studio. Jest to darmowy, solidny program, który jest szeroko stosowany i wspierany w społeczności.

alternatywnie istnieje kilka opcji, w tym dB Fiddle, które pozwalają budować schematy i pisać zapytania bezpośrednio w przeglądarce.

zacznijmy od prostego polecenia, aby utworzyć podstawową tabelę:

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

istnieją inne parametry, które możemy dodać podatatype, aby powiększyć kolumny:

  • NOT NULL – przekazanie tego parametru zapewni, że kolumna nie będzie mogła utrzymać NULL wartość
  • UNIQUE – przekazanie tego parametru uniemożliwi kolumnie trzymanie tej samej wartości więcej niż jeden raz
  • UNIQUE KEY – przekazanie tego parametru spowoduje wyznaczenie tej kolumny jako unikalnego identyfikatora. Jest to zasadniczo połączenie dwóch poprzednich parametrów.

teraz stworzymy tabelę (o nazwie doggo_info, która musi być zgodna ze standardami identyfikatorów dla baz danych) do przechowywania informacji o mieszkańcach Woof Woof Retreat, fikcyjnego przedszkola dla psów, o którym właśnie pomyślałem:)

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 )

a oto zupełnie nowa tabela, którą właśnie stworzyliśmy:

Nazwa Kolor Rasa wiek Waga wzrost Fav_Food Fav_Toy nie lubi alergie

zauważysz, że nasza tabela jest całkowicie pusta, a to dlatego, że nie dodaliśmy do niej jeszcze żadnych danych. To wykracza poza zakres tego artykułu, ale chciałem, abyś był świadomy tej ciekawostki.

Utwórz tabelę z istniejącej tabeli

możliwe jest również utworzenie nowej tabeli na podstawie istniejącej tabeli.

jest to dość proste i nie wymaga dużo więcej składni. Musimy wybrać tabelę i kolumny do „skopiowania” z:

CREATE TABLE new_table_name ASSELECT column1, column2, column3, column4 (use * to select all columns to be added to the new_table)FROM current_table_nameWHERE conditions_exist

tak więc, ze względu na celowość, dodałem kilka danych do naszejdoggo_info tabela i teraz wygląda jak Poniższy przykład:

Name Color Breed Age Weight Height Fav_Food Fav_Toy Dislikes Allergies
daisy red standard dachshund 1 14 6 salmon flavored kibble squeeky ball birds flying over the yard cats, baths, cleanliness
chief black/tan rottweiler 3 41 17 literally anything rope Hold staying off the couch słuchanie, zachowanie, nie slobbering na wszystko
Sammie light honey golden retriever 9 46 19 karkówka o Smaku wołowym jej łóżko rambutcious puppies żadne znane

teraz możemy utworzyć kolejną tabelę na podstawie danych, które mamy w naszym doggo_info tabela uruchamiając zapytanie poniżej:

CREATE TABLE puppies_only ASSELECT *FROM doggo_infoWHERE Age < 4

chcemy utworzyć nową tabelę ze wszystkimi kolumnami zdoggo_info tabeli, ale tylko wtedy, gdyAge jest mniejsza niż 4. Po uruchomieniu tego zapytania nasza nowa tabela będzie wyglądać następująco:

Name Color Breed Age Weight Height Fav_Food Fav_Toy Dislikes Allergies
daisy red standard dachshund 1 14 6 salmon flavored kibble squeeky ball birds flying over the yard cats, baths, cleanliness
chief black/tan rottweiler 3 41 17 literally anything rope tug staying off the couch listening, behaving, not slobbering on everything

mam nadzieję, że widzisz, jak potężne może być to stwierdzenie. Dzięki kilku liniom w naszym zapytaniu zasadniczo skopiowaliśmy dane z jednej tabeli do drugiej, ale tylko wiersze, które chcieliśmy.

to nie tylko przydatne narzędzie, które można mieć w pasku narzędzi programistycznych – zaoszczędzi ci niezliczoną ilość czasu, gdy będziesz musiał przenosić dane wokół tabel.

Zawijanie

teraz, gdy wiesz, jak utworzyć (lub skopiować) tabelę w SQL bez względu na to, w jakiej sytuacji jesteś przedstawiony, możesz zacząć wypełniać kolumny i wiersze danymi do przechowywania!

Instrukcja CREATE TABLE jest niezwykle przydatna i potężna. Jesteś gotowy, aby zacząć go dobrze wykorzystywać.

Jeśli ten artykuł okazał się pomocny, zajrzyj na mój blog, na którym często zamieszczam artykuły na temat tworzenia stron internetowych, życia i nauki.

Dlaczego nie zapisać się na mój newsletter? Możesz to zrobić w prawym górnym rogu głównej strony bloga. Od czasu do czasu lubię wysyłać ciekawe artykuły (moje i inne), zasoby i narzędzia dla programistów.

Jeśli masz pytania dotyczące tego artykułu lub po prostu ogólnie daj mi znać-przywitaj się na Twitterze lub na którymś z moich innych kont w mediach społecznościowych, które możesz znaleźć poniżej zapisz się do newslettera na stronie głównej mojego bloga lub na moim profilu w fCC:)

miłego dnia! Szczęśliwej nauki i szczęśliwego kodowania, przyjacielu!