Datové typy
Typ | Význam | Popis |
bool | "Logická hodnota" | Může nabývat pouze dvou hodnot: true (pravda) a false (nepravda). Za true se též považuje každá nenulová hodnota, za false naopak nulová hodnota. |
char(n) | "Znakový řetězec" | Délka řetězce je n znaků. Zadáte-li kratší řetězec, bude doplněn z prava mezerami. Za n se dosazuje číslo. Všechny typy znakových řetězců se uvozují jednoduchými 'uvozovkami'. |
varchar(n) | "Znakový řetězec" | Délka řetězce může být maximálně n znaků. Zůstává v dané délce (nedoplňuje se mezerami), varchar obsahuje informaci o délce řetězce. |
text | "Znakový řetězec" | Řetězec neomezené délky. Pokud nemusíte, nepoužívejte. Značně zpomaluje práci s databází. |
integer | "Celé číslo" | Číslo bez desetinné čárky. Přípustné hodnoty jsou od -2 do 2 biliónů. |
float | "Reálné číslo" | Číslo s desetinnou čárkou. Spíše bych měl napsat s desetinnou tečkou. |
numeric(p,d) | "Reálné číslo" | Číslo se zadanou přesností. Parametr p určuje celou délku čísla, parametr d kolik z toho bude za desetinnou čárkou. Například za numeric(5,3) můžete dosadit maximálně [+/-]99.999. |
serial | "Automatické (celé) číslo" | Do sloupce s tímto typem se automaticky ukládá nepoužité číslo. Začíná se od 1, pokračuje 2,3,4 atd. (není li určeno jinak). Hodí se jako primární klíč. |
date | "Datum" | Zadává se jako textový řetězec ve tvaru '2002-09-26'. |
time | "Čas" | Zadává se jako textový řetězec ve tvaru '13:00:13.440270' (Přesnost na milióntinu vteřiny), nebo jen '13:00:00' (hodiny,minuty,vteřiny) nebo jen hodiny:minuty. Jakým způsobem se odděluje čas (jestli dvojtečkou, nebo tečkou) záleží na tom, co jste vybrali při instalaci (v různých zemích se píše jinak). |
timestamp | "Čas+datum" | '2002-09-26 13:07:40' |
Všechny typy znakových řetězců se uvozují jednoduchými 'uvozovkami'.
CREATE TABLE
slouží k vytvoření tabulky. Za klíčovými slovy CREATE TABLE následuje jméno vytvářené tabulky a v závorce jména sloupců následovaná datovým typem sloupce a případné sloupcové omezení. Jména a datové typy jednotlivých sloupců se oddělují čárkou.
CREATE TABLE telefoni_seznam (id serial primary key ,jmeno VARCHAR(20),prijmeni VARCHAR(20),telefon VARCHAR(20));
Sloupce jako telefon, fax, rodné číslo, číslo občanského průkazu,..je vhodnější dávat typ varchar(), protože nebudeme provádět žádné matematické operace.
INSERT
slouží ke vkládání řádků do tabulky. Za klíčovými slovy INSERT INTO následuje název tabulky, klíčové slovo VALUES a seznam hodnot oddělených čárkou. Pokud do některého sloupce nechcete vložit hodnotu, můžete použít speciální hodnotu NULL. Tato hodnota se může použít za libovolný datový typ a říká, že položka "nemá žádnou zadanou hodnotu". Hodnota NULL se ničemu nerovná. Pokud jí třeba použijete za datový typ integer, pak NULL rozhodně není 0 (nula je totiž hodnotou)! Hodnota NULL není ani větší ani menší než jakákoliv jiná hodnota (tj. podmínka promenna > NULL bude vyhodnocena jako false, stejně tak i promenna < NULL).
INSERT INTO telefoni_seznam (jmeno, prijmeni,telefon) VALUES('Karel','Novák','775766611');
SELECT
Slouží k výpisu celé tabulky.
student=> SELECT * FROM telefoni_seznam;
znak ‘*‘ nahrazuje výpis všech jmen sloupců
student=> SELECT * FROM telefoni_seznam order by prijmeni;
výpis všech dat z tabulky setříděných podle příjmení vzestupně
student=> SELECT * FROM telefoni_seznam order by prijmeni desc;
výpis všech dat z tabulky setříděných podle příjmení sestupně
DROP TABLE
slouží ke zrušení tabulky nebo tabulek.
DROP TABLE telefoni_seznam, pokus;