Null-ийн үнэ цэнийн талаар юу мэдэх ёстой вэ

Нууцлалын асуудлаас зайлсхийхийн тулд NULL-үүдийг ашиглахыг ойлгох

Өгөгдлийн сангуудын шинэ хэрэглэгчдийн хувьд NULL утга - талбарт тусгай утга бүхий ихэвчлэн эргэлздэг. Энэ утгыг ямар ч төрлийн өгөгдөл агуулсан талбараас олж үзэж, харьцангуй өгөгдлийн сангийн агуулгын хүрээнд маш онцгой утгатай. NULL-ийн талаархи хэдэн үгтэй NULL-ийн тухай хэлэлцүүлгийг эхлүүлэх нь хамгийн дээр магадгүй юм .

Харин NULL нь тодорхойгүй өгөгдлийг төлөөлөхөд ашигладаг үнэ цэнэ юм. Өгөгдлийн сангийн программистууд нь "NULL утга" гэсэн хэллэгийг ашигладаг боловч энэ нь буруу байна. Санамж: NULL нь үл мэдэгдэх утга бөгөөд талбар нь хоосон байна.

Бодит ертөнцөд NULL

Энгийн жишээг харцгаая: жимсний тавцангийн тооллогыг агуулсан хүснэгт. Манай бараа материалын 10 алим, гурван жүрж агуулдаг гэж үзье. Бид мөн чавга зөөж байгаа ч манай тооллогын мэдээлэл нь бүрэн бус бөгөөд хэр олон (хэрэв байгаа бол) чавга бэлэн байдаг гэдгийг бид мэдэхгүй. NULL утга ашиглан доорхи хүснэгтэд харуулсан тооллогын хүснэгтэд харуулъя.

Жимсний зогсоолын бүртгэл

Бараа материал ID Зүйл Тоо хэмжээ
1 Алим 10
2 Жүрж 3
3 Plums NULL


Энэ нь чавганы бүртгэлд зориулж 0 тоог оруулахгүй байх нь ойлгомжтой бөгөөд учир нь энэ нь бид бараа материалгүй чавга байхгүй гэсэн утгатай юм. Үүний эсрэгээр бид зарим нэг чавгатай ч байж магадгүй.

NULL эсвэл NULL-д?

Хүснэгт нь NULL утгыг зөвшөөрөх эсвэл гаргахыг зөвшөөрдөг.

Зарим SQLSQL нь зарим нэг NULLs-ийг зөвшөөрдөг Бараа материалын хүснэгтийг үүсгэдэг SQL жишээ энд байна:

SQL> ТАЙЛБАРЫН INVENTORY (Бараа материалын ID INT NOT NULL, Item VARCHAR (20) NOT NULL, Тоо хэмжээний INT);

Бараа материалын хүснэгт энд Бараа материалын ID болон Багана баганад NULL утгуудыг зөвшөөрдөггүй, харин Тоо хэмжээний багананд зөвшөөрдөг.

NULL утга олгох нь төгс байхыг зөвшөөрөх боловч NULL утгууд нь асуудал үүсгэж болох тул NULL үргэлж NULL-д үр дүн өгдөг.

Таны хүснэгт NULL утгуудыг агуулсан эсэхийг шалгахын тулд IS NULL эсвэл IS NULL operator ашигла. IS NULL-ийн жишээ энд байна:

SQL SELECT INVENTORYID, ITEM, INVENTORY FROM INVENTORY INSURANCE WHERE QUANTITY NULL;

Энд бидний жишээнээс үзэхэд энэ нь эргэж ирэх болно:

Бараа материал ID Зүйл Тоо хэмжээ
3 Plums

NULLs дээр ажиллах

NULL утгуудтай ажиллах нь ихэвчлэн SQL үйлдэлээс шалтгаалан NULL үр дүнг үүсгэдэг. Жишээлбэл, А нь NULL гэж үзье:

Арифметик операторууд

Харьцуулах операторууд

Эдгээр нь NULL буцах тохиолдолд NULL-г буцаах операторуудын зарим жишээ юм. Илүү төвөгтэй асуултууд байгаа бөгөөд бүгд NULL утгуудаар төвөгтэй байдаг. Хэрэв та өөрийн өгөгдлийн санд байгаа NULL утгыг зөвшөөрвөл тэдгээрийн үр дагавар болон төлөвлөгөөг ойлгох хэрэгтэй.

Энэ бол NULL байна.