SQL #2: tworzenie schematu, zapytań i edycja danych

Język SQL (ang. Structured Query Language) jest rodzajem deklaratywnego języka, który powstał w latach 70-siątych, do obsługi danych w bazach. Język ten w swojej istocie miał być intuicyjny i prosty, tak aby maksymalnie ułatwić programiście pracę na bazie danych.

Tworzenie schematu

CREATE DATABASE – tworzenie bazy danych

CREATE DATABASE 'mydb';

CREATE TABLE – tworzy pojedynczą tabelę. W najprostszym przypadku wystarczy po prostu wypisać listę kolumn wraz z ich typami. Są one podobne do większości typów znanych z innych języków programowania*. Opcjonalnie można dodać wartość domyślną oraz opcję czy kolumna może być NULL czy nie. Na końcu zawsze pamiętaj o wskazaniu klucza głównego za pomocą klauzuli PRIMARY KEY.

CREATE TABLE IF NOT EXISTS 'osoby' (
  'id' INT(11) NOT NULL,
  'imie' INT(11) NULL DEFAULT NULL,
  'nazwisko' INT(11) NULL DEFAULT NULL,
  PRIMARY KEY ('id'));

CREATE INDEX – osobną kwestią jest tworzenie indeksów. Indeks to pewnego rodzaju wskaźnik w tabeli, który przyśpiesza wyszukiwanie danych szukanych po kolumnie, na której został założony. Domyślnie każdy klucz główny i obcy posiadają nałożony indeks. Możesz go jednak dodatkowo założyć na kolumnie, którą często wykorzystujesz w swoich zapytaniach.

CREATE INDEX 'index_name'
ON 'osoba'('nazwisko');

ALTER – umożliwia wykonanie operacji na strukturze istniejącej tabeli takie jak: dodawnie, usuwanie, zmiana nazwy, zmiana typu danych kolumny, a także dodawanie, usuwanie indexu dla kolumny.

ALTER TABLE 'nazwa_tabeli'
ADD/MODIFY/DROP/CHANGE 'nazwa_kolumny' typ_danych

Zapytania do bazy

Zapytania do bazy wykonywane są za pomocą słowa kluczowego SELECT, po którym wskazuje się jakie kolumny chcesz przejrzeć. SELECT * pokazuje wszystkie kolumny w tabeli. Można wykonać ograniczenie wyników poprzez filtrowanie danych za pomocą klauzuli WHERE.

SELECT 'imie','nazwisko' FROM 'osoby'
[WHERE 'nazwa_kolumny' operator 'wartość']

Modyfikowanie danych

INSERT INTO – pozwala na wstawianie nowych wartości do tabeli.

INSERT INTO 'osoby' ('imie','nazwisko')
VALUES ('wartość','wartość2')

UPDATE – pozwala na zmianę, aktualizację wartości kolumny w tabeli.

UPDATE 'nazwa_tabeli'
SET 'nazwa_kolumny'='wartość'
[WHERE 'nazwa_kolumny' operator 'wartość']

DELETE FROM – pozwala na usunięcie rekordów z tabeli.

DELETE FROM 'nazwa_tabeli'
[WHERE 'nazwa_kolumny' operator 'wartość']

DROP – pozwala na usunięcie indexów, tablic, baz danych.

DROP DATABASE/TABLE/INDEX 'nazwa'

*Pełna lista typów kolumn dostępnych dla bazy PostgreSQL: https://www.postgresql.org/docs/9.5/datatype.html

Stay in the Loop

Get the daily email from CryptoNews that makes reading the news actually enjoyable. Join our mailing list to stay in the loop to stay informed, for free.

Ostatnio dodane

- Advertisement - spot_img

Powiązane wpisy