NULL құндылықтары туралы не білуіңіз керек

Дерекқор мәселелерін болдырмау үшін NULL-ті пайдалануды түсіну

Дерекқор әлеміне жаңа пайдаланушылар көбінесе өріске арнайы мәнмен - NULL мәнімен араласады. Бұл мән деректердің кез келген түрін қамтитын өрісте болады және салыстырмалы дерекқордың контексінде өте ерекше мағынада болады. NULL-ті талқылауды NULL дегеніміз не туралы бірнеше сөзбен бастаған дұрыс.

Керісінше, NULL - белгісіз деректерді ұсыну үшін пайдаланылатын мән. Жиі деректер базасының бағдарламашылары «NULL мәні» деген фраза пайдаланады, бірақ бұл дұрыс емес. Есте сақтаңыз: NULL - өріс бос болған белгісіз мән.

Нағыз әлемдегі NULL

Қарапайым мысалды қарап көрейік: жеміс-жидек стенділерінің тізімін қамтитын үстел. Біздің инвентарьымызда 10 алма және үш апельсин бар. Біз сондай-ақ қара өрік бар, бірақ біздің түгендеу туралы ақпарат толық емес, және біз қанша (егер бар болса) қара өрік бар екенін білмейміз. NULL шамасын пайдаланып, төмендегі кестеде көрсетілген түгендеу кестесі бар.

Fruit Stand Inventory

Инвентарий идентификаторы Элемент Саны
1 Алма 10
2 Апельсиндер 3
3 Егінді NULL


Жәшікке арналған жазбалар үшін 0 мөлшерін қосу қате болар еді, себебі бұл түгендеуде ешқандай қара өрік жоқтығын білдіреді. Керісінше, бізде кейбір қара өріктер болуы мүмкін, бірақ біз жай ғана сенімді емеспіз.

NULL немесе NOT NULL үшін?

Кесте NULL мәндеріне рұқсат беру үшін жасалуы мүмкін немесе жоқ.

Мұнда кейбір NULL-ке рұқсат беретін түгендеу кестесін жасайтын SQL мысалы:

SQL> CREATE TABLE INVENTORY (InventoryID INT NOT NULL, элемент VARCHAR (20) NOT NULL, саны INT);

Мұнда түгендеу кестесінде Инвентарь идентификаторы мен Элемент бағандары үшін NULL мәндері болмайды, бірақ олар Саны бағанына рұқсат береді.

NULL мәніне тамаша мүмкіндік беріп жатқанда, NULL мәндері проблемаларды тудыруы мүмкін, себебі біреуі NULL мәндерінің кез келген салыстыру әрқашан NULL нәтижесіне әкеледі.

Кестедегі NULL мәндері бар-жоғын тексеру үшін IS NULL немесе IS NOT NULL операторын пайдаланыңыз. Міне IS NULL мысалы:

SQL> ИНВЕНТИТЕТТІ ТАҢДАУ, МӘНІ, КЕПІЛДІКТІҢ НЕГІЗГЕ НЕГІЗГЕ ҚАЛПЫНА КЕЛТІРІМІЗ;

Біздің мысалымызды ескере отырып, бұл оралады:

Инвентарий идентификаторы Элемент Саны
3 Егінді

NULLдерде жұмыс істеу

NULL мәндерімен жұмыс істеу көбінесе SQL жұмысына байланысты NULL нәтижелерін шығарады. Мысалы, A NULL деп болжанса:

Арифметикалық операторлар

Салыстыру операторлары

Бұл тек бір оператордың NULL болса, әрқашан NULL қайтаратын операторлардың кейбір мысалдары ғана. Неғұрлым күрделі сұраулар бар, барлығы NULL мәндерімен қиындайды. Егер сіз өзіңіздің дерекқорыңыздағы NULL мәндеріне рұқсат берсеңіз, олардың салдарын түсініп, оларды жоспарлаңыз.

Бұл NULL сөзі.