NULL
Z Wikipedie, otevřené encyklopedie
NULL je obvykle označení pro žádnou hodnotu nebo nic. Slovo vychází z latinského nullus.
Obsah |
[editovat] Programovací jazyky
V programování je NULL speciální hodnota, kterou se označuje adresní ukazatel (nebo jakýkoliv jiný druh referenčního odkazu), který v danou chvíli neukazuje nikam. V programovacím jazyce C je hodnota NULL reprezentována binární nulou. V programovacím jazyce Pascal se taková hodnota označuje klíčovým slovem nil
.
[editovat] Relační databáze, SQL
V relačních databázích označuje NULL speciální hodnotu uloženou v databázi, která představuje neznámou, nedefinovanou apod. hodnotu.
[editovat] Operace nad hodnotou NULL
Pro NULL zpravidla platí zvláštní pravidla pro výpočty a porovnávání.
[editovat] Algebraické
Výsledek jakékoli algebraické operace zahrnující NULL je opět NULL, porovnávání NULL s čímkoli je NEPRAVDA, případně speciální hodnota UNKNOWN (to platí i pro porovnávání s NULL, takže porovnání NULL = NULL
je nepravdivé). Je to proto, že jedna neznámá hodnota se vůbec nemusí rovnat jiné neznámé hodnotě.
[editovat] Logické
AND | TRUE | FALSE | NULL |
---|---|---|---|
TRUE | TRUE | FALSE | NULL |
FALSE | FALSE | FALSE | FALSE |
NULL | NULL | FALSE | NULL |
OR | TRUE | FALSE | NULL |
---|---|---|---|
TRUE | TRUE | TRUE | TRUE |
FALSE | TRUE | FALSE | NULL |
NULL | TRUE | NULL | NULL |
[editovat] Speciální funkce
Proto se hodnota NULL v SQL testuje speciálním výrazem sloupec IS NULL
(sloupec obsahuje hodnotu NULL) nebo sloupec IS NOT NULL
(sloupec neobsahuje hodnotu NULL).
[editovat] Operace JOIN
Pokud sloupec může obsahovat hodnotu NULL, je potřeba při spojování tabulek (JOIN) tuto možnost vzít v úvahu a nadefinovat chování systému v případě, že sloupec má opravdu hodnotu NULL.
[editovat] Souborové systémy
V unixových operačních systémech se používá soubor /dev/null, který označuje tzv. bit bucket, zařízení, do kterého lze zapsat cokoli, ale veškerá zapsaná data se nenávratně ztrácejí. V operačních systémem firmy Microsoft (MS-DOS, Microsoft Windows) se takové zařízení označuje jako NUL.
Podobné soubory se zpravidla používají k zahazování nežádoucích hlášení programu pomocí přesměrování (např. program > /dev/null
).