Podsumowanie: w tym samouczku pokażemy, jak użyć instrukcji MySQL CREATE TABLE
do utworzenia nowej tabeli w bazie danych.
składnia MySQL CREATE TABLE
InstrukcjaCREATE TABLE
umożliwia utworzenie nowej tabeli w bazie danych.
poniżej przedstawiono podstawową składnię instrukcji CREATE TABLE
:
przyjrzyjmy się składni bardziej szczegółowo.,
najpierw określasz nazwę tabeli, którą chcesz utworzyć po słowach kluczowych CREATE TABLE
. Nazwa tabeli musi być unikalna w bazie danych. IF NOT EXISTS
jest opcjonalne. Pozwala sprawdzić, czy utworzona tabela już istnieje w bazie danych. W takim przypadku MySQL zignoruje całą instrukcję i nie utworzy nowej tabeli.
Po Drugie, podajesz listę kolumn tabeli w sekcji column_list
, kolumny są oddzielone przecinkami.,
Po trzecie, możesz opcjonalnie określić silnik pamięci dla tabeli w klauzuli ENGINE
. Możesz użyć dowolnego silnika przechowywania, takiego jak InnoDB i MyISAM. Jeśli nie zadeklarujesz jawnie silnika pamięci masowej, MySQL domyślnie użyje InnoDB.
InnoDB stał się domyślnym silnikiem pamięci od wersji MySQL 5.5. Silnik pamięci masowej InnoDB przynosi wiele korzyści związanych z relacyjnym systemem zarządzania bazami danych, takich jak transakcje ACID, integralność referencyjna i odzyskiwanie awarii. W poprzednich wersjach MySQL używał MyISAM jako domyślnego silnika pamięci masowej.,
poniżej przedstawiono składnię definicji kolumny:
oto szczegóły:
column_name
określa nazwę kolumny. Każda kolumna ma określony typ danych i Opcjonalny rozmiar, np.VARCHAR(255)
- ograniczenie
NOT NULL
zapewnia, że kolumna nie będzie zawieraćNULL
. Oprócz ograniczeniaNOT NULL
, kolumna może mieć dodatkowe ograniczenia, takie jak CHECK I UNIQUE. DEFAULT
określa domyślną wartość kolumny.,-
AUTO_INCREMENT
wskazuje, że wartość kolumny jest automatycznie zwiększana o jeden przy każdym włożeniu nowego wiersza do tabeli. Każda tabela ma maksymalnie jedną kolumnęAUTO_INCREMENT
.
Po liście kolumn można zdefiniować ograniczenia tabel, takie jak UNIQUE, CHECK, PRIMARY KEY i FOREIGN KEY.
na przykład, jeśli chcesz ustawić kolumnę lub grupę kolumn jako klucz podstawowy, używasz następującej składni:
Code language: SQL (Structured Query Language) (sql)
MySQL CREATE TABLE przykłady instrukcji
weźmy kilka przykładów tworzenia nowych tabel.,
1) MySQL Tworzenie tabeli prosty przykład
następujące polecenie tworzy nową tabelę o nazwie tasks
:
Code language: SQL (Structured Query Language) (sql)
tabela zadań ma następujące kolumny:
task_id
jest kolumną Auto-increment. Jeśli użyjesz instrukcjiINSERT
, aby wstawić nowy wiersz do tabeli bez podawania wartości kolumnytask_id
, MySQL automatycznie wygeneruje sekwencyjną liczbę całkowitą dlatask_id
począwszy od 1.,- kolumna
title
jest zmienną kolumną ciągów znaków, której maksymalna długość wynosi 255. Oznacza to, że nie można wstawić do tej kolumny ciągu znaków, którego długość jest większa niż 255. OgraniczenieNOT NULL
oznacza, że kolumna nie akceptujeNULL
. Innymi słowy, musisz podać wartość inną niż NULL podczas wstawiania lub aktualizowania tej kolumny. - kolumny
start_date
Idue_date
sąDATE
., Ponieważ te kolumny nie mają ograniczeniaNOT NULL
, mogą przechowywaćNULL
. Kolumna start_date ma domyślną wartość bieżącej daty. Innymi słowy, jeśli nie podasz wartości kolumny start_date podczas wstawiania nowego wiersza, kolumna start_date przyjmie bieżącą datę serwera bazy danych. status
Ipriority
są kolumnamiTINYINT
, które nie pozwalająNULL
.,- kolumna
description
jest kolumnąTEXT
, która akceptujeNULL
. created_at
jest kolumnąTIMESTAMP
, która przyjmuje bieżący czas jako wartość domyślną.
task_id
jest główną kolumną tabelitasks
. Oznacza to, że wartości w kolumnie task_id
będą jednoznacznie identyfikować wiersze w tabeli.,
Po wykonaniu polecenia CREATE TABLE
aby utworzyć tabelę tasks
można wyświetlić jej strukturę za pomocą polecenia DESCRIBE
:
Code language: SQL (Structured Query Language) (sql)
to zdjęcie pokazuje schemat bazy danych tasks
tabela: