Praca z bazami danych jest bezpośrednio związana zprzebieralnie i zawarte w nich dane. Ale przed rozpoczęciem akcji należy utworzyć tabele. Do automatyzacji tego procesu służy specjalna funkcja SQL - „CREATE TABLE”.
Pierwsza rzecz!
Zanim zajmiemy się procesem tworzenia tabel za pomocą polecenia MS SQL „CREATE TABLE”, warto zastanowić się, co trzeba wiedzieć przed użyciem funkcji.
Przede wszystkim musisz wymyślić nazwę stołu -musi być unikalny w porównaniu do innych w bazie danych i przestrzegać kilku reguł. Nazwa musi zaczynać się od litery (a-z), po której następują litery, cyfry i podkreślenie, a wynikowa fraza nie może być słowem zastrzeżonym. Długość nazwy tabeli nie może przekraczać 18 znaków.
Decydując się na nazwę, warto się rozwijaćstruktura: wymyśl nazwy kolumn, zastanów się, jakie dane są w nich używane i jakie pola należy wypełnić. Tutaj warto od razu zdefiniować pola kluczy obcych i podstawowych, a także ewentualne ograniczenia dla wartości danych.
Pozostałe niuanse tabeli można łatwo skorygować, dlatego na etapie tworzenia tabeli mogą nie być do końca przemyślane.
Składnia
Po opracowaniu struktury tabeli możesz przejść dojego tworzenie. Można to zrobić całkiem łatwo za pomocą funkcji SQL „CREATE TABLE”. W nim użytkownik musi określić nazwę tabeli oraz wymyśloną wcześniej listę kolumn, wskazując typ i nazwę dla każdej z nich. Składnia funkcji jest następująca:
CREATE TABLE nazwa_tabeli
({typ danych nazwa_kolumny [wyrażenie DOMYŚLNE] [ograniczenie_kolumny]… | ograniczenie_tabeli}
[, {nazwa_kolumny typ danych [wyrażenie DOMYŚLNE] [ograniczenie_kolumny] ... | table_constraint}] ...)
Argumenty użyte w konstrukcji funkcji mają następujące znaczenie:
- table_name - nazwa tabeli
- nazwa_kolumny - nazwa kolumny
- datatype - typ danych użyty w tym polu
- DEFAULT to domyślne wyrażenie używane w kolumnie.
Możliwe jest również użycie dwóch dodatkowych argumentów funkcji:
- colum_constraint — parametry kolumny
- table_constraint — parametry tabeli
W nich użytkownik może określić ograniczenia lub warunki wypełniania tabeli, wymagane do działania.
Funkcje tworzenia tabel
Podczas pisania zapytania z funkcją SQL „CREATETABELA”, czasami konieczne jest ustalenie zasad wypełniania pól. W tym celu należy dodać specjalne atrybuty funkcji, które definiują określony zestaw warunków.
Aby określić, czy komórka może:jest pusta wartość, po określeniu nazwy i typu kolumny należy wpisać jedno ze słów kluczowych: NULL (mogą być wartości puste) lub NOT NULL (pole musi być wypełnione).
Podczas tworzenia tabeli w większości przypadkówwymagane jest ujednolicenie każdego rekordu, aby uniknąć posiadania dwóch takich samych. W tym celu najczęściej stosuje się numerację wierszy. A żeby nie wymagać od użytkownika znajomości ostatniej liczby w tabeli, w funkcji „CREATE TABLE” wystarczy określić kolumnę klucza podstawowego, wpisując słowo kluczowe „Primary key” po odpowiednim polu. Najczęściej jest to klucz podstawowy, który łączy ze sobą tabele.
Aby zapewnić konkatenację z kluczem podstawowym, użyjwłaściwość klucza obcego „FOREIGN KEY”. Określając tę właściwość dla kolumny, możesz upewnić się, że to pole zawiera wartość zgodną z jedną z tych, które znajdują się w kolumnie klucza podstawowego tej samej lub innej tabeli. W ten sposób można zapewnić spójność danych.
Aby zapewnić weryfikację zgodnościdla pewnego zestawu lub definicji należy użyć atrybutu CHECK. Jest zapisywany jako ostatni na liście argumentów funkcji i ma pewne logiczne wyrażenie jako parametr osobisty. Można go użyć do ograniczenia listy możliwych wartości, na przykład używając tylko liter „M” i „Ж” w polu tabeli „Płeć”.
Oprócz przedstawionych, funkcja SQL „CREATE TABLE” ma wiele bardziej szczegółowych atrybutów, ale w praktyce są one używane znacznie rzadziej.
Przykłady
Aby w pełni zrozumieć zasadę działania funkcji, warto zastanowić się w praktyce, jak działa CREATE TABLE (SQL). Poniższy przykład tworzy tabelę pokazaną na rysunku:
UTWÓRZ TABELĘ Niestandardową
(ID CHAR (10) NOT NULL Klucz podstawowy,
Nazwa_niestandardowa CHAR (20),
Custom_address CHAR (30),
Custom_city CHAR (20),
CHAR Custom_Country (20),
ArcDate CHAR (20))
Jak widać parametr możliwego braku wartości w komórce (NULL) można pominąć, ponieważ jest on używany domyślnie.