Úsáid NULLs a thuiscint chun Fadhbanna Bunachar Sonraí a Sheachaint
Go minic mearbhall ar úsáideoirí atá nua do shaol na mbunachair sonraí ag luach speisialta ar leith don réimse - an luach NULL. Is féidir an luach seo a fháil i réimse ina bhfuil aon chineál sonraí agus tá brí an-speisialta laistigh de chomhthéacs bunachar sonraí gaolmhar. Is dócha go dtosóimid ár ndíospóireacht ar NULL le cúpla focal faoi cad nach bhfuil NULL:
- Níl an uimhir náid ag NULL.
- Níl an téadán folamh ("") luach le NULL.
Ina ionad sin, is é NULL an luach a úsáidtear chun píosa sonraí anaithnid a léiriú. Go minic, úsáidfidh ríomhchláraitheoirí bunachar sonraí an abairt "luach NULL", ach tá sé seo mícheart. Cuimhnigh: Is luach anaithnid é NULL ina bhfuil an réimse le feiceáil.
NULL sa Real World
Tabhair breathnú ar shampla shimplí: tábla ina bhfuil an fhardal le haghaidh seastán torthaí. Cuir isteach go bhfuil 10 úlla agus trí oráiste ar ár bhfardal. Plumaí stoc againn freisin, ach níl ár n-eolas fardal neamhiomlán agus níl a fhios againn cé mhéad plumaí (más ann) atá i stoc. Ag baint úsáide as an luach NULL, bheadh an tábla fardal a thaispeántar sa tábla thíos.
Fardal Seas Fruit
InventoryID | Mír | Cainníocht |
1 | Úlla | 10 |
2 | Oráistí | 3 |
3 | Plumaí | NULL |
Ba léir go mbeadh sé mícheart go gcuirfí cainníocht 0 le haghaidh taifead na bpríomaí, mar go gcuirfeadh sé sin le tuiscint nach raibh aon phumaí againn i bhfardal. Ar a mhalairt sin, b'fhéidir go mbeadh roinnt plumaí againn, ach níl muid cinnte go díreach.
Chun NULL nó NACH NULL?
Is féidir tábla a dhearadh chun luachanna NULL a cheadú nó nach bhfuil.
Seo sampla SQL a chruthaíonn tábla Fardal a cheadaíonn roinnt NULLs:
SQL> CREAT AN TIONSCAL TÁBLA (InventoryID INT NACH NULL, Mír VARCHAR (20) NACH NULL, Cainníocht INT);Ní chuireann an tábla Fardal anseo luachanna NULL ar fáil don InventoryID agus na gcolún Mír , ach tugann sé deis dóibh don cholún Cainníochta .
Cé go bhfuil luach NULL ag ligean breá breá, is féidir le luachanna NULL fadhbanna a chur faoi deara mar thoradh ar aon chomparáid luachanna ina bhfuil NULL amháin i gcónaí, is ea NULL.
Chun a sheiceáil an bhfuil luachanna NULL ag do tábla, bain úsáid as an oibreoir IS NULL nó NACH NÍL. Seo sampla de IS NULL:
SQL> SELECT INVENTORYID, ITEM, QUANTITY FROM INVENTORY NÁ NACH FAOI LEABHÁIL;Mar gheall ar ár sampla anseo, d'fhillfeadh sé seo:
InventoryID | Mír | Cainníocht |
---|---|---|
3 | Plumaí |
Ag feidhmiú ar NULLs
Is minic a tháirgeann luachanna NULL le torthaí NULL, ag brath ar oibríocht SQL . Mar shampla, ag glacadh leis go bhfuil A ag NULL:
Oibritheoirí Uimhríochta
- A + B = NULL
- A - B = NULL
- A * B = NULL
- A / B = NULL
Oibreoirí Comparáide
- A = B = NULL
- A! = B = NULL
- A> B = NULL
- A!
Seo ach roinnt samplaí de na hoibreoirí a chuirfidh ar ais NULL i gcónaí má tá operand amháin NULL. Tá go leor ceisteanna níos casta ann, agus tá luachanna NULL ag casta ar fad. Is é an pointe baile a thógann, má cheadaíonn tú luachanna NULL i do bhunachar sonraí, tuiscint a fháil ar na himpleachtaí agus pleanáil dóibh.
Sin anuas anseo go mall!