Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2009-03-07

null – это не значение, а обозначение отсутствия значения

Проблемы третичной логики, уж 40 лет вечнозеленые нуллы:

... Для Дейта одним из наиболее серьезных поводов к неприятию null в SQL является как раз то, что null – это не значение, а обозначение отсутствия значения. По мнению же Дейта (совершенно справедливому) в реляционной базе данных могут храниться только типизированные значения. Поэтому называть null неопределенным значением в переводе статей Дейта просто нельзя, поскольку это не значение вообще. И сам Дейт в последние годы никогда не использует словосочетание null value, всегда только null.

Грант в гораздо меньшей степени формалист. Его не очень беспокоит терминология. В его статье "базы данных выполняют запросы", и совершенно спокойно используется термин null value. Поэтому я и в переводе не стесняюсь использовать привычный оборот неопределенное значение. Для Гранта гораздо важнее дефекты трехзначной логики в том виде, в котором она применяется в SQL.
...
В общем, понятно одно. В SQL имеется ряд дефектов, связанных с поддержкой null'ов. Рано или поздно эти дефекты нужно устранить. Наверное, уже всем ясно, что от этого языка нам никуда не деться. Значит, нужно его, по мере возможности, приводить в порядок. ...


citforum.ru

Комментариев нет:

Отправить комментарий

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Klaipeda (15) Manager (15) web-browser (15) Никонов (15) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) Baltic (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) seaside (1) serialization (1) shore (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)