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.
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
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!
Leave a Reply