ਡਾਟਾਬੇਸ ਸਮੱਸਿਆਵਾਂ ਤੋਂ ਬਚਣ ਲਈ NULLs ਦੀ ਵਰਤੋਂ ਨੂੰ ਸਮਝੋ
ਡੈਟਾਬੇਸਾਂ ਦੀ ਦੁਨੀਆ ਵਿੱਚ ਨਵੇਂ ਉਪਭੋਗਤਾ ਅਕਸਰ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਮੁੱਲ ਖਾਸ ਕਰਕੇ ਫੀਲਡ ਦੁਆਰਾ ਉਲਝਣਾਂ ਕਰਦੇ ਹਨ - NULL ਵੈਲਯੂ. ਇਹ ਵੈਲਯੂ ਕਿਸੇ ਵੀ ਕਿਸਮ ਦੇ ਡੇਟਾ ਵਾਲੇ ਖੇਤਰ ਵਿੱਚ ਲੱਭਿਆ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਇੱਕ ਰਿਲੇਸ਼ਨਲ ਡੇਟਾਬੇਸ ਦੇ ਸੰਦਰਭ ਵਿੱਚ ਬਹੁਤ ਖ਼ਾਸ ਅਰਥ ਰੱਖਦਾ ਹੈ. NULL ਬਾਰੇ ਸਾਡੀ ਚਰਚਾ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਇਹ ਸੰਭਵ ਤੌਰ ਸਭ ਤੋਂ ਵਧੀਆ ਹੈ ਕਿ ਕੁਝ ਸ਼ਬਦ ਕੀ ਹਨ:
- NULL ਨੰਬਰ ਸਿਫਰ ਨਹੀਂ ਹੈ
- NULL ਖਾਲੀ ਸਤਰ ("") ਮੁੱਲ ਨਹੀਂ ਹੈ
ਇਸ ਦੀ ਬਜਾਏ, NULL ਇੱਕ ਅਣਪਛਾਤੀ ਡੇਟਾ ਦੇ ਪ੍ਰਤੀਨਿਧ ਵਜੋਂ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਮੁੱਲ ਹੈ. ਅਕਸਰ, ਡਾਟਾਬੇਸ ਪ੍ਰੋਗਰਾਮਰਾਂ ਨੇ "ਇੱਕ NULL ਵੈਲਯੂ" ਸ਼ਬਦ ਵਰਤਿਆ ਹੋਵੇਗਾ, ਪਰ ਇਹ ਗਲਤ ਹੈ. ਯਾਦ ਰੱਖੋ: ਇੱਕ NULL ਇੱਕ ਅਣਜਾਣ ਮੁੱਲ ਹੈ ਜਿਸ ਵਿੱਚ ਖੇਤਰ ਖਾਲੀ ਰਹਿ ਜਾਂਦਾ ਹੈ.
ਅਸਲੀ ਸੰਸਾਰ ਵਿੱਚ NULL
ਆਉ ਇੱਕ ਸਧਾਰਨ ਉਦਾਹਰਨ ਵੱਲ ਝਾਤੀ ਮਾਰੀਏ: ਇੱਕ ਮੇਜ਼ ਜਿਸ ਵਿੱਚ ਇੱਕ ਫਲ ਸਟੈਂਡ ਲਈ ਵਸਤੂ ਹੈ. ਮੰਨ ਲਓ ਕਿ ਸਾਡੇ ਵਸਤੂ ਵਿਚ 10 ਸੇਬ ਅਤੇ ਤਿੰਨ ਸੰਤਰੀ ਹਨ. ਅਸੀਂ ਸਟਾਕ ਦੇ ਫੋਰਮ ਵੀ ਕਰਦੇ ਹਾਂ, ਲੇਕਿਨ ਸਾਡੀ ਇਨਕਰੀਟਰੀ ਜਾਣਕਾਰੀ ਅਧੂਰੀ ਹੈ ਅਤੇ ਅਸੀਂ ਨਹੀਂ ਜਾਣਦੇ ਕਿ ਫੋਰਮ ਕਿੰਨੇ ਹਨ (ਜੇ ਕੋਈ ਹੈ) NULL ਵੈਲਯੂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਸਾਡੇ ਕੋਲ ਹੇਠਾਂ ਸਾਰਣੀ ਵਿੱਚ ਦਿਖਾਇਆ ਜਾਣ ਵਾਲੀ ਸੂਚੀ ਸਾਰਣੀ ਹੋਵੇਗੀ.
ਫਲ ਸਟਰੀਟ ਇਨਵੈਂਟਰੀ
ਇਨਵੈਂਟਰੀਆਈਡੀ | ਆਈਟਮ | ਗਿਣਤੀ |
1 | ਸੇਬ | 10 |
2 | ਸੰਤਰੇ | 3 |
3 | ਪਲਮ | NULL |
ਇਹ ਸਪੱਸ਼ਟ ਤੌਰ ਤੇ ਗਲੈਕਸਿਆਂ ਦੇ ਰਿਕਾਰਡ ਲਈ 0 ਦੀ ਮਾਤਰਾ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਗਲਤ ਹੈ, ਕਿਉਂਕਿ ਇਸਦਾ ਮਤਲਬ ਹੋਵੇਗਾ ਕਿ ਸਾਡੇ ਕੋਲ ਸੂਚੀ ਵਿੱਚ ਕੋਈ ਫੋਰਮ ਨਹੀਂ ਹੈ . ਇਸ ਦੇ ਉਲਟ, ਸਾਡੇ ਕੋਲ ਕੁਝ ਪਲੌਮ ਹੋ ਸਕਦੇ ਹਨ, ਪਰ ਅਸੀਂ ਇਹ ਨਹੀਂ ਜਾਣਦੇ.
NULL ਜਾਂ NULL ਕਰਨ ਲਈ?
ਇੱਕ ਸਾਰਣੀ ਨੂੰ ਡਿਜਾਇਨ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਜਾਂ ਤਾਂ ਇਸ ਨੂੰ NULL ਵੈਲਯੂਜ਼ ਲਈ ਮਨਜੂਰ ਕੀਤਾ ਜਾ ਸਕੇ.
ਇੱਥੇ ਇੱਕ SQL ਉਦਾਹਰਨ ਹੈ ਜੋ ਇੱਕ ਇਨਵੈਂਟਰੀ ਟੇਬਲ ਤਿਆਰ ਕਰਦੀ ਹੈ ਜੋ ਕੁੱਝ NULL ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੀ ਹੈ:
SQL> ਟੇਬਲ ਇਨਵੈਂਟਰੀ ਬਣਾਉ (ਇਨਵੇਟਰੀਆਈਡੀ ਆਈਐਨਟੀ ਨਹੀਂ, ਆਈਟਮ ਵੈਂਚਰ (20) ਨਾਵਲ, ਮਾਤਰਾ ਆਈਐਨਟੀ);ਇਨਵੈਂਟਰੀ ਟੇਬਲ ਇਨਵੇਟਰੀਆਈਡੀ ਅਤੇ ਆਈਟਮ ਕਾਲਮ ਲਈ ਨੂਲ ਮੁੱਲ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਦਿੰਦੀ, ਪਰ ਉਹਨਾਂ ਨੂੰ ਮਾਤਰਾ ਕਾਲਮ ਲਈ ਅਨੁਮਤੀ ਦਿੰਦਾ ਹੈ.
ਇੱਕ NULL ਮੁੱਲ ਦੀ ਇਜ਼ਾਜਤ ਦੇ ਦੌਰਾਨ ਬਿਲਕੁਲ ਵਧੀਆ ਹੈ, NULL ਵੈਲਯੂ ਸਮੱਸਿਆਵਾਂ ਦਾ ਕਾਰਨ ਬਣ ਸਕਦੀ ਹੈ ਕਿਉਂਕਿ ਕਿਸੇ ਮੁੱਲ ਦੀ ਤੁਲਨਾ ਕਰਨ ਨਾਲ ਹਮੇਸ਼ਾ NULL ਹੁੰਦਾ ਹੈ.
ਇਹ ਦੇਖਣ ਲਈ ਕਿ ਕੀ ਤੁਹਾਡੀ ਸਾਰਣੀ ਵਿੱਚ NULL ਵੈਲਯੂਜ ਹਨ, IS NULL ਜਾਂ IS NULL operator ਨਹੀਂ ਹੈ. ਇੱਥੇ IS NULL ਦੀ ਇੱਕ ਉਦਾਹਰਨ ਹੈ:
SQL- ਦੀ ਚੋਣ ਕਰੋ ਇਨਵੇਸਟਰਾਈਡ, ਆਈਟਮ, ਕੁਆਲੀਟਰੀ ਦੀ ਗਿਣਤੀ ਜਿਸ ਦੀ ਗੁਣਵਤਾ ਕੁੱਝ ਨਹੀਂ ਹੈ;ਸਾਡੀ ਉਦਾਹਰਨ ਇੱਥੇ ਦਿੱਤੀ ਗਈ ਹੈ, ਇਹ ਵਾਪਸ ਆਵੇਗੀ:
ਇਨਵੈਂਟਰੀਆਈਡੀ | ਆਈਟਮ | ਗਿਣਤੀ |
---|---|---|
3 | ਪਲਮ |
NULLs ਤੇ ਓਪਰੇਟਿੰਗ
SQL ਔਪਰੇਸ਼ਨ ਦੇ ਅਧਾਰ ਤੇ, NULL ਵੈਲਯੂਜ਼ ਦੇ ਨਾਲ ਕੰਮ ਕਰਨਾ ਅਕਸਰ NULL ਦੇ ਨਤੀਜਿਆਂ ਦਾ ਉਤਪਾਦਨ ਕਰਦਾ ਹੈ. ਉਦਾਹਰਨ ਲਈ, ਮੰਨ ਲਓ ਕਿ A ਨਲਕ ਹੈ:
ਅੰਕਗਣਕ ਓਪਰੇਟਰ
- A + B = NULL
- A - B = NULL
- A * B = NULL
- A / B = NULL
ਤੁਲਨਾ ਆਪਰੇਟਰ
- A = B = NULL
- A! = B = NULL
- A> B = NULL
- A!
ਇਹ ਕੇਵਲ ਓਪਰੇਟਰਾਂ ਦੀਆਂ ਕੁਝ ਉਦਾਹਰਨਾਂ ਹਨ ਜੋ ਇੱਕ NULL ਵਾਪਸ ਆਉਂਦੇ ਹਨ ਜੇਕਰ ਇੱਕ ਓਪਰੇਂਡ NULL ਹੈ ਬਹੁਤ ਜ਼ਿਆਦਾ ਗੁੰਝਲਦਾਰ ਸਵਾਲ ਮੌਜੂਦ ਹਨ, ਅਤੇ ਸਾਰੇ ਨੁੱਲ ਮੁੱਲਾਂ ਦੁਆਰਾ ਗੁੰਝਲਦਾਰ ਹਨ. ਲੈਜ਼ ਹੋਮ ਪੁਆਇੰਟ ਇਹ ਹੈ ਕਿ, ਜੇ ਤੁਸੀਂ ਆਪਣੇ ਡੈਟਾਬੇਸ ਵਿੱਚ NULL ਵੈਲਯੂ ਦੀ ਮਨਜ਼ੂਰੀ ਦਿੰਦੇ ਹੋ, ਤਾਂ ਇਸਦਾ ਮਤਲਬ ਸਮਝੋ ਅਤੇ ਉਨ੍ਹਾਂ ਦੀ ਯੋਜਨਾ ਬਣਾਉ.
ਇਹ ਸੰਖੇਪ ਵਿੱਚ ਸੰਖੇਪ ਹੈ!