Samizdatová skripta

Datové typy a jejich modifikátory, vyhrazená slova jazyka SQL


Číselné datové typypočet bytůse znaménkembez znaménka (UNSIGNED)
TINYINT1-128 - 1270 – 255
SMALLINT2-32768 - 327670 – 65535
MEDIUMINT3-8 388 608 - 8 388 6070 – 16 777 215
INT4-2 147 483 648 – 2 147 483 6470 – 4 294 967 295
BIGINT8lze odvoditlze odvodit
FLOAT (M,D)4liší se podle použitých hodnot
DOUBLE(M,D)8liší se podle použitých hodnot
DECIMAL(M,D)M + 2liší se podle použitých hodnot

AUTO_INCREMENT automatické číslo, hodnota prvního záznamu bude 1, další se automaticky zvyšují o 1, nelze vložit už jednou použitou maximální hodnotu i když byl mezitím daný záznam smazán. Při vkládání nového záznamu můžeme vložit hodntu NULL, 0, můžeme hodnotu vynechat, můžeme zadat číslo, které dosud zadáno nebylo. V každé tabulce může být pouze jedno pole Auto_increment a musí být deklarováno jako celé číslo, jeho hodnota nemůže překročit daný rozsah. Modifikátor ZEROFILL se používá k zobrazení vedoucích nul INT(8) ZEROFILL.......číslo 23 bude zobrazeno jako číslo 00000023

Textové datové typy

Textové datové typymaximální velikostpřidělená paměť
CHAR(X)255 byteX bytepole pevné délky
VARCHAR(X)255 byteX+1 bytepole proměnné délky
TINYTEXT255 byteX+1 byte
TINYBLOB255 byteX+2 byte
TEXT65535 byte X+2 bytepoleproměnné délky
BLOB65535 byte X+2 bytepoleproměnné délky
MEDIUMTEXT1,6 MBX+3 byte
MEDIUMBLOB1,6 MBX+3 byte
LONGTEXT4,2 GB X+4 byte
LONGBLOB4,2 GB X+4 byte

Modifikátory

Modifikátory použití
AUTO_INCREMENTvšechny INTautomatické číslování
BINARYCHAR VARCHARukládání textových informací jako binárních řetězců
DEFAULTvše kromě BLOB, TEXTumožňuje určit hodnotu pole, jehož hodnota nebude při pokusu o uložení známa
NOT NULLvšechnypole musí obsahovat hodnotu
NULLvšechnypole mohou obsahovat prázdnou hodnotu
PRIMARY KEYvšechny
UNIQUEvšechnyzamezení zápisu duplicitních klíčů do sloupců s omezující podmínkou jedinečnosti
UNSIGNEDčíselné
ZEROFILLčíselné

Datové typy data a času

DATETIMEYYY-MM-DD HH:MM:SS
DATEYYY-MM-DD
TIMEHH:MM:SS
YEARYYYY 1901 - 2155
TIMESTAMP Mění se 1970 – 2037

Funkce pro práci s časem

MONTHNAME(datum) název měsíce
DAYNAME(datum) název dne v týdnu
DAYOFYEAR(datum) kolikátý den v roce
DAYOFMONTH(datum) kolikátý den v měsíci
DAYOFWEEK(datum) kolikátý den v týdnu (neděle = 1)
WEEKDAY(datum) index dne v týdnu (pondělí = 1)

Aktuální datum a čas

NOW(), SYSDATE(), CURENT_TIMESTAMP,
CURDATE(), CURRENT_DATE
CURTIME(), CURRENT_TIME

u typu ENUM píšeme do sloupce délka jednotlivé hodnoty v apostrofech oddělené čárkou např u sloupce nakladatel 'Albatros','Kramerius','Jiný'

u typu SET obdobně píšeme např u sloupce druh 'dětská','historický román','scifi','fantasy' (u typu SET může být zaškrtnuto více hodnot – označujeme pomocí CTRL+kliknutí myši)

Vyhrazená slova jazyka SQL

CREATE
ALTER
INSERT
SELECT
FROM
ON
ORDER BY
JOIN
CROSS JOIN
RIHGT JOIN
LIMIT
LIKE
DROP
DELETE
UPDATE
SET
INTO
WHERE
GROUP BY
LEFT JOIN
FULL JOIN
AND
OR
AS  
  
  

upravit odstranit css

NAVRCHOLU.cz