MySQL NULL පැහැදිලි කිරීම: අර්ථය, විමසුම්, කාර්යයන්, සුචිකරණය, අනුපිළිවෙල, සහ හොඳම ක්‍රියාමාර්ග

目次

1. හැඳින්වීම

MySQL යනු බොහෝ යෙදුම් සහ පද්ධතිවල භාවිතා වන දත්ත සමුදාය කළමනාකරණ පද්ධතියකි. MySQL තුළ NULL සංකල්පය ආරම්භකයින්ට තේරුම් ගැනීමට අපහසු විය හැකි මාතෘකාවලින් එකකි. MySQL සමඟ වැඩ කිරීමේදී NULL යනු කුමක්ද යන්න සහ එය ක්‍රියා කළ යුතු ආකාරය තේරුම් ගැනීමේදී නිවැරදිව තේරුම් ගැනීම ඉතා වැදගත් වේ.

මෙම ලිපියෙහි, MySQL හි NULL හි මූලික නිර්වචනය සිට එය ක්‍රියා කිරීමේ ආකාරය, එය සමඟ සෙවීම, NULL සම්බන්ධ ප්‍රයෝජනවත් ශ්‍රියාන්තර සහ අවධානය යොමු කළ යුතු වැදගත් කරුණු දක්වා සම්පූර්ණ පැහැදිලි කිරීමක් අපි සපයනු ලබමු. අපි NULL ගැන සුලබ ප්‍රශ්නවලට පිළිතුරු දෙන FAQ කොටසක් ද ඇතුළත් කර ඇත.

මෙම ලිපිය ඉලක්ක කර ඇත්තේ මෙවැනි කියවන්නන් සඳහාය:

  • MySQL පළමු වරට භාවිතා කරන ආරම්භකයින්
  • මූලික SQL තේරුම් ගත් අර්ධ-උසස් ඉගෙනුම්කරුවන් ගැඹුරින් ඉගෙන ගැනීමට අපේක්ෂා කරන්නන්
  • දත්ත සමුදාය සැලසුම්කරණය සහ මෙහෙයුම්වල සම්බන්ධ වූ ඉංජිනේරුවන්

මෙම ලිපියේ අවසානය වන විට, ඔබට හැකි වනු ඇත්තේ:

  • NULL යනු කුමක්ද යන්න නිවැරදිව තේරුම් ගැනීම
  • NULL ඇතුළත් දත්ත ක්‍රියා කිරීම සහ සෙවීම
  • NULL සම්බන්ධ ගැටලු වළක්වා ගැනීමට හොඳම පුරුදු ඉගෙන ගැනීම

දැන්, NULL හි මූලධර්ම සංකල්ප පියවරෙන් පියවර තේරුම් ගනිමු.

2. NULL මූලධර්ම

දත්ත සමුදාය සමඟ වැඩ කිරීමේදී NULL සංකල්පය ඉතා වැදගත් වේ. කෙසේ වෙතත්, NULL යනු වඩාත්ම සුලබව වැරදි තේරුම් ගැනෙන අංගවලින් එකකි. මෙම කොටසේදී, MySQL හි NULL හි මූලික නිර්වචනය සහ ගුණාංග විස්තරාත්මකව පැහැදිලි කරමු.

NULL හි නිර්වචනය

NULL යනු “කිසිදු වටිනාකමක් නොමැති” හෝ “නොදන්නා වටිනාකමක්” යන්නින් අදහස් කරන විශේෂ තත්ත්වයකි. මෙය හිස් වාක්‍ය රේඛාවකින් (“”) හෝ සීරෝ (0) වෙනස් වේ. වෙනස්කම් පෙන්වන උදාහරණයක් මෙහි දැක්වේ:

  • NULL : කිසිදු වටිනාකමක් නොමැති (අනිශ්චිත තත්ත්වය)
  • හිස් වාක්‍ය රේඛාව (“”) : වටිනාකමක් තිබේ, නමුත් එහි අන්තර්ගතය හිස්
  • සීරෝ (0) : වටිනාකමක් තිබේ, සහ එම වටිනාකම 0

NULL හි ගුණාංග

  1. තුලනාවලදී NULL හැසිරීම SQL හි, NULL විශේෂ නීතිවලින් ක්‍රියා කෙරේ. උදාහරණයක් ලෙස, මෙම තුලනාවල ප්‍රතිඵල සටහන් කරන්න:
    SELECT NULL = NULL; -- Result: NULL
    SELECT NULL <> NULL; -- Result: NULL
    SELECT NULL IS NULL; -- Result: TRUE
    
  • සාමාන්‍ය තුලනා ක්‍රියාකාරකවලින් (=, <, >, ආදිය) NULL සමඟ තුලනා කිරීම NULL ප්‍රතිඵලයක් ලබා දෙයි.
  • NULL නිවැරදිව ඇගයීම සඳහා, ඔබට IS NULL හෝ IS NOT NULL භාවිතා කළ යුතුය.
  1. ගණිතමය මෙහෙයුම්වල NULL NULL ඇතුළත් ඕනෑම ගණිතමය මෙහෙයුමක් සැමවිටම NULL ආපසු ලබා දෙයි. උදාහරණය:
    SELECT 10 + NULL; -- Result: NULL
    SELECT NULL * 5; -- Result: NULL
    
  1. තර්කානුකූල මෙහෙයුම්වල NULL තත්ත්වයක NULL ඇතුළත් වන විට, ප්‍රතිඵලය ද NULL විය හැකිය. පහත උදාහරණ බලන්න:
    SELECT NULL AND TRUE; -- Result: NULL
    SELECT NULL OR FALSE; -- Result: NULL
    

NULL ගැටලු ඇති කරන්නේ ඇයි

ඔබ NULL නිවැරදිව ක්‍රියා නොකරන්නේ නම්, ඔබට මෙවැනි ගැටලු ඇති විය හැකිය:

  • අනපේක්ෂිත සෙවුම් ප්‍රතිඵල උදාහරණයක් ලෙස, පහත ප්‍රශ්නය age NULL වන පේළි නිෂේධ කරයි.
    SELECT * FROM users WHERE age > 20;
    

විසඳුමක් ලෙස, ඔබට NULL තත්ත්වය තුළ ඇතුළත් කළ යුතුය:

SELECT * FROM users WHERE age > 20 OR age IS NULL;
  • ගණනය වැරදි සහ හිස් දත්ත වැරදි තේරුම් ගැනීම සාගත කිරීමේ ශ්‍රියාන්තර (SUM, AVG, ආදිය) ගණනය කිරීමේදී NULL නොසලකා හරිනවා. නිමිත්තෙන්, බොහෝ NULL වටිනාකම් ඇති දත්ත සමුදායන් අනපේක්ෂිත ප්‍රතිඵල ජනනය කළ හැකිය.

මූලික NULL නීතිවල සාරාංශය

  • NULL යනු “කිසිදු වටිනාකමක් නොමැති” තත්ත්වය නියෝජනය කරයි.
  • සාමාන්‍ය තුලනා ක්‍රියාකාරක NULL නිවැරදිව ක්‍රියා නොකරන නිසා, IS NULL හෝ IS NOT NULL භාවිතා කරන්න.
  • ගණිතමය හෝ තර්කානුකූල මෙහෙයුම්වල NULL ඇතුළත් වන විට, ප්‍රතිඵලය ද NULL වේ.

3. NULL ක්‍රියා කිරීමේ ආකාරය

MySQL හි NULL සමඟ වැඩ කිරීමේදී, එය නිවැරදිව ක්‍රියා කිරීමේ ආකාර තේරුම් ගත යුතුය. මෙම කොටසේදී, NULL ඇතුළත් කිරීම, යාවත්කාලීන කිරීම සහ මකා දැමීම සඳහා විශේෂ ප්‍රවේශයන් විස්තරාත්මකව පැහැදිලි කරමු.

දත්ත ඇතුළත් කිරීමේදී NULL සකස් කිරීමේ ආකාරය

දත්ත සමුදායකට නව වාර්තාවක් ඇතුළත් කිරීමේදී, ඔබට පේළියක් NULL සකස් කළ හැකිය. පහත දැක්වෙන්නේ සංරචක උදාහරණයි.

  • ප්‍රකාශවත්ව NULL නිර්දේශ කිරීම
    INSERT INTO users (name, age) VALUES ('Taro', NULL);
    

In this query, the age column is not given a value, and NULL is inserted.

  • NULL පෙරනිමි අගයක් ලෙස NULL පෙරනිමි අගයක් ලෙස සකසා ඇත්නම්, අගය නොදැක්වීම ස්වයංක්‍රීයව NULL ඇතුළත් කරයි.
    CREATE TABLE users (
        id INT AUTO_INCREMENT PRIMARY KEY,
        name VARCHAR(50),
        age INT DEFAULT NULL
    );
    
    INSERT INTO users (name) VALUES ('Hanako');
    

මෙම උදාහරණයේ, age තීරුවට පැහැදිලි අගයක් ලබා නොදෙන නිසා, පෙරනිමි NULL ඇතුළත් කරයි.

දත්ත යාවත්කාලීන කිරීමේදී NULL සකස් කිරීමේ ක්‍රමය

ඔබට පවතින දත්ත යාවත්කාලීන කර තීරුවේ අගය NULL ලෙස සකස් කළ හැක. මෙන්න උදාහරණ කිහිපයක්.

  • අගයක් NULL වෙත යාවත්කාලීන කිරීම
    UPDATE users SET age = NULL WHERE name = 'Taro';
    

මෙම විමසුම age තීරුවට NULL සකසයි, නාමය “Taro” වන රෙකෝඩ් සඳහා.

  • කොන්දේසිමය යාවත්කාලීන කිරීම් ඔබට විශේෂ අවස්ථා වල NULL සකස් කිරීමට කොන්දේසි එක් කළ හැක.
    UPDATE users SET age = NULL WHERE age < 18;
    

මෙහි, age තීරුව සියලු රෙකෝඩ් සඳහා NULL ලෙස සකසයි, එහි වයස 18 ට වඩා අඩු වනවා.

දත්ත මකා දැමීමේදී NULL කොන්දේසිය ලෙස භාවිතා කිරීම

NULL ඇතුළත් දත්ත මකා දැමීමේදී, කොන්දේසියේ NULL ඇතුළත් කළ යුතුය. IS NULL භාවිතා කරන්න, සාමාන්‍ය සසඳන මෙහෙයුම්කරු නොව.

  • තීරුව NULL වන පේළි මකා දැමීම
    DELETE FROM users WHERE age IS NULL;
    

මෙම විමසුම age තීරුව NULL වන රෙකෝඩ් මකා දමයි.

  • බහු කොන්දේසි සමඟ NULL පේළි මකා දැමීම
    DELETE FROM users WHERE age IS NULL AND name = 'Taro';
    

මෙම උදාහරණයේ, age NULL වන සහ name “Taro” වන රෙකෝඩ් පමණක් මකා දමයි.

NULL සමඟ ක්‍රියා කිරීමේ වැදගත් සටහන්

  1. IS NULL නිවැරදිව භාවිතා කරන්න කොන්දේසියේ NULL භාවිතා කරන විට, සෑමවිටම IS NULL හෝ IS NOT NULL භාවිතා කරන්න, = මෙහෙයුම්කරු නොව.
    SELECT * FROM users WHERE age = NULL; -- Incorrect
    SELECT * FROM users WHERE age IS NULL; -- Correct
    
  1. ඔබේ යෙදුම NULL සැකසීම සැලකිල්ලට ගනිමින් නිර්මාණය කරන්න යෙදුමකින් දත්ත ක්‍රියා කරන විට, NULL කෙරෙහි සැලකිල්ලෙන් ක්‍රියා කිරීම අනපේක්ෂිත හැසිරීම් වැළැක්වීමට උපකාරී වේ.

  2. ගනුදෙනු (transactions) භාවිතා කරන්න NULL ඇතුළත් දත්ත මෙහෙයුම් සඳහා, අනපේක්ෂිත දත්ත වෙනස්කම් වැළැක්වීමට ගනුදෙනු භාවිතා කිරීම සලකා බලන්න.

4. NULL ඇතුළත් දත්ත සොයීම

MySQL හි දත්ත සොයන විට, NULL නිවැරදිව සැකසීම ඉතා වැදගත් වේ. NULL සාමාන්‍ය අගයන්ට වඩා වෙනස් ලෙස ක්‍රියා කරන බැවින්, විශේෂ සැලකිල්ලක් අවශ්‍ය වේ. මෙම කොටසේ, NULL ඇතුළත් විට කාර්යක්ෂමව සොයන්නේ කෙසේදැයි පැහැදිලි කරමු.

NULL සොයන මූලික ක්‍රම

NULL සොයන්න, සාමාන්‍ය සසඳන මෙහෙයුම්කරු (=, <, >) වෙනුවට IS NULL සහ IS NOT NULL භාවිතා කරන්න.

  • NULL සොයන්න
    SELECT * FROM users WHERE age IS NULL;
    

මෙම විමසුම age තීරුව NULL වන සියලු රෙකෝඩ් ලබා ගනී.

  • NULL නොවන අගයන් සොයන්න
    SELECT * FROM users WHERE age IS NOT NULL;
    

මෙම විමසුම age තීරුව NULL නොවන සියලු රෙකෝඩ් ලබා ගනී.

NULL ඇතුළත් සංකීර්ණ කොන්දේසි සමඟ සොයීම

NULL සසඳන මෙහෙයුම්කරු සමඟ නිවැරදිව සැකසිය නොහැකි බැවින්, සංකීර්ණ කොන්දේසි වල එය භාවිතා කරන විට සැලකිල්ලෙන් සිටින්න.

  • කොන්දේසියක NULL ඇතුළත් කිරීම
    SELECT * FROM users WHERE age > 20 OR age IS NULL;
    

මෙම විමසුම age 20 ට වඩා වැඩි හෝ NULL වන රෙකෝඩ් ලබා ගනී.

  • NOT මෙහෙයුම්කරු සහ NULL
    SELECT * FROM users WHERE NOT (age > 20 OR age IS NULL);
    

මෙම විමසුම age 20 හෝ ඊට අඩු වන අතර NULL නොවන රෙකෝඩ් ලබා ගනී.

LIKE මෙහෙයුම්කරු සමඟ NULL භාවිතය

LIKE මෙහෙයුම්කරු NULL සමඟ භාවිතා කළ නොහැක. NULL යනු අගයක් නොමැති බව නිසා, පහත විමසුම NULL පේළි ලබා නොදේ:

SELECT * FROM users WHERE name LIKE '%a%';
-- NULL values are not matched by this condition

ඒ වෙනුවට, ඔබට NULL පරීක්ෂාවක් එක් කළ යුතුය:

SELECT * FROM users WHERE name LIKE '%a%' OR name IS NULL;

එකතු කිරීමේ ක්‍රියා (aggregate) සහ NULL සමඟ සොයීම

NULL බොහෝ එකතු කිරීමේ ක්‍රියා (SUM, AVG, ආදිය) විසින් නොසලකා හරිනවා. නිවැරදි ප්‍රතිඵල ලබා ගැනීමට, NULL සැලකිල්ලට ගත යුතුය.

  • COUNT ක්‍රියාව
    SELECT COUNT(*) AS total_records, COUNT(age) AS non_null_ages FROM users;
    
  • COUNT(*) : NULL ඇතුළත් සියලු රෙකෝඩ් ගණන
  • COUNT(column) : NULL නොවන රෙකෝඩ් ගණන
  • වෙනත් එකතුකරණ ක්‍රියා
    SELECT AVG(age) AS average_age FROM users WHERE age IS NOT NULL;
    

මෙය NULL අගයන් නොගැන්ව සාමාන්‍යය ගණනය කරයි.

NULL සෙවීමේ සටහන්

  1. IS NULL සහ = අතර වෙනස NULL සාමාන්‍ය සසඳුම් වලින් හසුරවිය නොහැකි බැවින්, සැමවිටම IS NULL හෝ IS NOT NULL භාවිතා කරන්න.
    SELECT * FROM users WHERE age = NULL; -- Incorrect
    SELECT * FROM users WHERE age IS NULL; -- Correct
    
  1. බහු කොන්දේසි හසුරවීම NULL පවතිනවා නම්, අනිච්චිත ප්‍රතිඵල වලින් වැළැක්වීමට කොන්දේසියේ එය පැහැදිලිව ඇතුළත් කළ යුතුය.
    SELECT * FROM users WHERE age > 20; -- NULL is excluded
    SELECT * FROM users WHERE age > 20 OR age IS NULL; -- Includes NULL
    
  1. කාර්ය සාධන බලපෑම කොන්දේසියේ NULL ඇතුළත් කරන විට, සමහර අවස්ථාවල ඉන්ඩෙක්ස් භාවිතය සීමා විය හැක. අපි ඉන්ඩෙක්ස් ප්‍රභාවය පරීක්ෂා කිරීමේ උපදෙස් දෙනවා.
    EXPLAIN SELECT * FROM users WHERE age IS NULL;
    

සාරාංශය

NULL නිවැරදිව සෙවීම අවශ්‍ය ප්‍රතිඵල ලබා ගැනීමට අත්‍යවශ්‍යයි. NULL ඇතුළත් දත්ත සෙවීමේදී, IS NULL සහ IS NOT NULL සුදුසු ලෙස භාවිතා කර, කාර්ය සාධන හා ඉන්ඩෙක්ස් බලපෑම් ගැන සැලකිල්ලට ගන්න.

5. NULL, ඉන්ඩෙක්ස්, සහ කාර්ය සාධනය

දත්ත ගබඩා කාර්ය සාධනය වැඩිදියුණු කිරීමට, ඉන්ඩෙක්ස් නිවැරදිව භාවිතා කිරීම අත්‍යවශ්‍යයි. එහෙත්, NULL අඩංගු තීරුවල ක්‍රියාකාරකම් ඉන්ඩෙක්ස් කාර්යක්ෂමතාවට බලපායි. මෙම කොටසේ, NULL සහ ඉන්ඩෙක්ස් අතර සම්බන්ධතාව, ඒවායේ කාර්ය සාධන බලපෑම, සහ ඔප්ටිමයිසේශන් උපාය මාර්ග පැහැදිලි කරමු.

NULL ඇතුළත් තීරුවල ඉන්ඩෙක්ස් නිර්මාණය

MySQL හි, NULL අඩංගු තීරුවල ඉන්ඩෙක්ස් නිර්මාණය කළ හැක. උදාහරණයක් ලෙස:

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50),
    age INT,
    INDEX (age)
);

මෙම අවස්ථාවේ, age තීරුවේ ඉන්ඩෙක්ස්, තීරුව NULL අගයන් අඩංගු වුවත් වලංගු වේ.

IS NULL සහ IS NOT NULL සමඟ ඉන්ඩෙක්ස් භාවිතය

NULL ඇතුළත් කොන්දේසි සමඟ සෙවීමේදී, විමසුම අනුව ඉන්ඩෙක්ස් භාවිතා විය හැකිය හෝ නොවිය හැකිය.

  • ඉන්ඩෙක්ස් භාවිතා වන විට
    SELECT * FROM users WHERE age IS NULL;
    

මෙම විමසුමේ, ඉන්ඩෙක්ස් භාවිතා කළ හැකි අතර, කාර්යක්ෂම සෙවීම සලස්වයි.

  • ඉන්ඩෙක්ස් භාවිතා නොවන විට පහත පරිදි සංකීර්ණ කොන්දේසි භාවිතා කරන විට, ඉන්ඩෙක්ස් යෙදෙන්නේ නැත.
    SELECT * FROM users WHERE age + 1 IS NULL;
    

ඉන්ඩෙක්ස් භාවිතා වීම විමසුම් කොන්දේසියේ ව්‍යුහය මත පදනම් වේ.

NULL සහ සංයුක්ත ඉන්ඩෙක්ස්

සංයුක්ත ඉන්ඩෙක්ස් භාවිතා කරන විටත්, NULL අඩංගු තීරුවලට විශේෂ සැලසුම් ලබා දේ.

  • සංයුක්ත ඉන්ඩෙක්ස් උදාහරණයක්
    CREATE TABLE employees (
        id INT AUTO_INCREMENT PRIMARY KEY,
        department_id INT,
        salary INT,
        INDEX (department_id, salary)
    );
    

department_id NULL නම්, සංයුක්ත ඉන්ඩෙක්ස් (department_id, salary) හි කොටස සම්පූර්ණයෙන් භාවිතා නොවිය හැක.

NULL හි කාර්ය සාධන බලපෑම

  1. ඉන්ඩෙක්ස් ප්‍රභාවය
  • NULL කොන්දේසි ඇතුළත් සෙවීම් බොහෝවිට ඉන්ඩෙක්ස් වලින් ප්‍රයෝජන ලබයි. එහෙත්, කොන්දේසිය සංකීර්ණ වුවහොත්, ඉන්ඩෙක්ස් භාවිතය සීමා විය හැක.
  1. දත්ත ප්‍රමාණය විශාල වීම
  • ඉන්ඩෙක්ස් කළ තීරුවේ NULL අගයන් බොහෝ වුවහොත්, ඉන්ඩෙක්ස් ප්‍රමාණය වැඩිවී, විමසුම් කාර්ය සාධනය අඩු විය හැක.
  1. අධික NULL වලින් වැළැක්වීම සඳහා නිර්මාණ උපාය මාර්ග
  • නිතර NULL අඩංගු තීරුවල, NULL භාවිතය අඩු කිරීමට පෙරනිමි අගයක් නියම කිරීම සමහර අවස්ථාවල කාර්ය සාධනය වැඩි කරයි.

කාර්ය සාධන ඔප්ටිමයිසේශන් උපදෙස්

  • ඉන්ඩෙක්ස් භාවිතය පරීක්ෂා කරන්න ඉන්ඩෙක්ස් යෙදෙනවාදැයි පරීක්ෂා කිරීමට EXPLAIN භාවිතා කරන්න:
    EXPLAIN SELECT * FROM users WHERE age IS NULL;
    
  • NULL අඩු කිරීම සඳහා නිර්මාණය කරන්න ඔබේ සැලැස්ම තුළ NULL වලින් වැළැක්වීමට NOT NULL සීමා සහ පෙරනිමි අගයන් යොදන්න:
    CREATE TABLE users (
        id INT AUTO_INCREMENT PRIMARY KEY,
        age INT NOT NULL DEFAULT 0
    );
    
  • ඉන්ඩෙක්ස් නැවත ඇගයීම දත්ත ප්‍රමාණය සහ විමසුම් රටා අනුව, කාර්ය සාධනය වැඩිදියුණු කිරීම සඳහා ඉන්ඩෙක්ස් එකතු කිරීම හෝ ඉවත් කිරීම සලකා බලන්න.

සාරාංශය

NULL ඉන්ඩෙක්ස් සමඟ එකට පවතින්න පුළුවන්, නමුත් සමහර තත්ත්වයන් යටතේ එය කාර්ය සාධනයට බලපාන්න පුළුවන්. සුදුසු ඉන්ඩෙක්ස් උපාය මාර්ග සැලසුම් කිරීම සහ NULL භාවිතය සඳහා පැහැදිලි ප්‍රතිපත්තියක් නිර්වචනය කිරීමෙන්, ඔබට කාර්යක්ෂම දත්ත ගබඩා මෙහෙයුම් ලබා ගත හැක.

6. NULL සහ අනුක්‍රමණය

MySQL හි දත්ත අනුක්‍රමණය කරන විට, NULL කෙසේ හැසිරෙයිදැයි අවබෝධය ලබා ගැනීම වැදගත් වේ. NULL සාමාන්‍ය අගයන්ට වඩා වෙනස් ලෙස ක්‍රියා කරන බැවින්, පෙරනිමි අනුක්‍රමණ ක්‍රමය සහ එය අභිරුචි කිරීමේ ක්‍රමය දැන ගැනීම ඔබට අවශ්‍ය ප්‍රතිඵල ලබා ගැනීමට උපකාරී වේ. මෙම කොටසේ, NULL සමඟ අනුක්‍රමණය කිරීමේ මූලික නීති සහ උසස් තාක්ෂණික ක්‍රම විස්තර කරමු.

NULL හි පෙරනිමි අනුක්‍රමණ ක්‍රමය

MySQL හි NULL පහත පරිදි හැසිරේ:

  • ආරෝහණ (ASC) : NULL අගයන් පළමුව පෙන්වයි.
  • අවරෝහණ (DESC) : NULL අගයන් අවසන්ව පෙන්වයි.

උදාහරණය:

SELECT * FROM users ORDER BY age ASC;
-- NULL appears first

SELECT * FROM users ORDER BY age DESC;
-- NULL appears last

NULL හි ස්ථානය පැහැදිලිව පාලනය කිරීම

ඔබට පෙරනිමි අනුක්‍රමණ හැසිරීම අභිබවා, NULL අගයන් පළමුව හෝ අවසන්ව පෙන්වීමට බල කරගත හැක.

  • NULL අගයන් පළමුව තබන්න
    SELECT * FROM users ORDER BY age IS NULL DESC, age ASC;
    

මෙම විමසුමේ, age NULL වන පේළි පළමුව පෙන්වයි, පසුපස නො-NULL පේළි ආරෝහණ අනුක්‍රමණයෙන් සකස් කරයි.

  • NULL අගයන් අවසන්ව තබන්න
    SELECT * FROM users ORDER BY age IS NULL ASC, age ASC;
    

මෙහි, නො-NULL අගයන් පළමුව පෙන්වයි, සහ NULL අගයන් අවසන්ව තබා ඇත.

NULL සමඟ බහු තීරුවල අනුක්‍රමණය

බහු තීරුවල අනුක්‍රමණය කරන විට, ඔබට තීරුවකට අනුව NULL හැසිරීම නියම කළ හැක.

  • බහු කොන්දේසි සමඟ උදාහරණය
    SELECT * FROM users ORDER BY department_id ASC, age IS NULL DESC, age ASC;
    

මෙම විමසුම දත්ත පහත අනුක්‍රමණයෙන් සකසයි:

  1. department_id ආරෝහණ අනුක්‍රමණයෙන්
  2. age NULL වන පේළි
  3. නො-NULL age අගයන් ආරෝහණ අනුක්‍රමණයෙන්

NULL සහ අනුක්‍රමණ කාර්ය සාධනය

NULL අඩංගු තීරුවක අනුක්‍රමණය කරන විට, ඉන්ඩෙක්ස් භාවිතා වේද යන්න විමසුම් ව්‍යුහය මත පදනම් වේ. ඉන්ඩෙක්ස් භාවිතා නොකළහොත්, අනුක්‍රමණයට වැඩි කාලයක් ගත විය හැක.

  • ඉන්ඩෙක්ස් භාවිතය පරීක්ෂා කරන්න
    EXPLAIN SELECT * FROM users ORDER BY age ASC;
    

EXPLAIN භාවිතා කර ඉන්ඩෙක්ස් යෙදෙනවාදැයි තහවුරු කරන්න.

අනුක්‍රමණය කිරීමේ වැදගත් සටහන්

  1. තීරුවේ දත්ත වර්ග සලකා බලන්න
  • NULL අඩංගු තීරුවේ දත්ත වර්ගය අනුචිත නම්, අනපේක්ෂිත ප්‍රතිඵල ලැබිය හැක. සංඛ්‍යාත්මක සහ අක්ෂර වර්ග අතර වෙනස්කම්ට විශේෂ අවධානයක් දෙන්න.
  1. අනුක්‍රමණ කොන්දේසි පැහැදිලි කරන්න
  • විමසුම් ප්‍රතිඵල පැහැදිලි කිරීම සඳහා, NULL හසුරවීමේදී IS NULL හෝ IS NOT NULL භාවිතා කරන්න.
    SELECT * FROM users WHERE age IS NULL ORDER BY age DESC;
    

සාරාංශය

පෙරනිමියෙන්, NULL ආරෝහණ අනුක්‍රමණයේ පළමුව පෙන්වයි, අවරෝහණ අනුක්‍රමණයේ අවසන්ව පෙන්වයි. නමුත්, ඔබට විමසුම අභිරුචි කර NULL අගයන්ගේ ස්ථානය පාලනය කළ හැක. සුදුසු කොන්දේසි නියම කිරීමෙන්, ඔබට අවශ්‍ය අනුක්‍රමණ ක්‍රමය ලබා ගත හැක.

7. NULL හසුරවීමට ප්‍රයෝජනවත් ක්‍රියාකාරකම්

MySQL NULL කාර්යක්ෂමව හසුරවීමට පරිහරණය කළ හැකි කිහිපයක් ක්‍රියාකාරකම් සපයයි. මෙම ක්‍රියාකාරකම් භාවිතා කිරීමෙන්, ඔබට පැහැදිලි විමසුම් ලියන්න සහ NULL අගයන් ඇතුළත් දත්ත වඩා හොඳින් සැකසිය හැක. මෙම කොටසේ, සාමාන්‍යයෙන් භාවිතා වන ක්‍රියාකාරකම් සහ ඒවා භාවිතා කරන ආකාරය පැහැදිලි කරමු.

COALESCE ක්‍රියාකාරකම

COALESCE නියමිත පරාමිතීන්ගෙන් පළමු නො-NULL අගය ලබා දෙයි. NULL ප්‍රතිපත්ති අගයක් සමඟ ප්‍රතිස්ථාපනය කිරීමට අවශ්‍ය විට මෙය ප්‍රයෝජනවත් වේ.

  • මූලික ව්‍යවස්ථාව
    COALESCE(value1, value2, ..., valueN)
    
  • උදාහරණය
    SELECT COALESCE(age, 0) AS adjusted_age FROM users;
    

මෙම විමසුමේ, age NULL නම්, එය 0 ලබා දෙයි; නැතහොත්, age අගය ලබා දෙයි.

  • බහු පරාමිතීන් සමඟ උදාහරණය
    SELECT COALESCE(NULL, NULL, 'Default Value', 'Other Value') AS result;
    

ප්‍රතිඵලය “Default Value” වේ.

IFNULL ක්‍රියාකාරකම

IFNULL ප්‍රකාශනය NULL නම් නියමිත අගයක් ලබා දෙයි. එය COALESCE සමඟ සමාන වන නමුත් තArgument දෙකකට පමණ සීමා වේ.

  • මූලික ව්‍යුහය
    IFNULL(expression, alternate_value)
    
  • උදාහරණය
    SELECT IFNULL(age, 0) AS adjusted_age FROM users;
    

age NULL නම්, මෙය 0 ලබා දෙයි.

  • COALESCE සමඟ වෙනස
  • IFNULL තArgument දෙකකට පමණ පිළිගනී, COALESCE බහු තArgument පිළිගත හැක.

NULL-ආරක්ෂිත සමාන මෙහෙයුම්කරු (<=>)

<=> මෙහෙයුම්කරු NULL අගයන් ආරක්ෂිතව සසඳීමට ඉඩ දෙයි. මෙම මෙහෙයුම්කරු භාවිතා කිරීමෙන් NULL අගයන් සෘජුව සසඳා ගැනීමට හැකියාව ලැබේ.

  • උදාහරණය
    SELECT * FROM users WHERE age <=> NULL;
    

මෙම විමසුම age NULL වන ලේඛන නිවැරදිව ලබා ගනී.

  • සාමාන්‍ය සමාන මෙහෙයුම්කරු (=) සමඟ වෙනස
  • = මෙහෙයුම්කරු සමඟ, NULL = NULL NULL ලබා දෙයි, නමුත් <=> සමඟ, එය TRUE ලබා දෙයි.

ISNULL ක්‍රියාකාරකම

ISNULL අගයක් NULLදැයි පරීක්ෂා කරයි. සාමාන්‍යයෙන් IS NULL සහ IS NOT NULL ප්‍රමාණවත් වන නමුත්, ඔබට ක්‍රියාකාරකම-මූලික පරීක්ෂාවක් අවශ්‍ය නම් ISNULL ප්‍රයෝජනවත් වේ.

  • මූලික ව්‍යුහය
    ISNULL(expression)
    
  • උදාහරණය
    SELECT ISNULL(age) AS is_null FROM users;
    

age NULL නම්, එය 1 ලබා දෙයි; නැතහොත්, 0 ලබා දෙයි.

NULLIF ක්‍රියාකාරකම

NULLIF තArgument දෙක සමාන නම් NULL ලබා දෙයි; නැතහොත්, පළමු තArgument ලබා දෙයි.

  • මූලික ව්‍යුහය
    NULLIF(expression1, expression2)
    
  • උදාහරණය
    SELECT NULLIF(salary, 0) AS adjusted_salary FROM employees;
    

salary 0 නම්, එය NULL ලබා දෙයි; නැතහොත්, salary අගය ලබා දෙයි.

නිවැරදි NULL ක්‍රියාකාරකම තෝරා ගැනීම

  • පෙරනිමි අගයක් සකස් කිරීමට : COALESCE හෝ IFNULL භාවිතා කරන්න
  • NULL ආරක්ෂිතව සසඳීමට : <=> මෙහෙයුම්කරු භාවිතා කරන්න
  • NULL සපැහැදිලිව පරීක්ෂා කිරීමට : ISNULL හෝ IS NULL භාවිතා කරන්න
  • විශේෂිත තත්ත්වයන් යටතේ NULL ලබා දීමට : NULLIF භාවිතා කරන්න

සාරාංශය

MySQL NULL හසුරවීමට විවිධ ක්‍රියාකාරකම් සපයයි. සුදුසු ක්‍රියාකාරකම තෝරා ගැනීමෙන් ඔබට සරල හා කාර්යක්ෂම විමසුම් ලිවිය හැක. ඔබේ යෙදුම NULL අගයන් හසුරවන්නේ කෙසේද යන්න උත්තරීතර කිරීමට මෙම ක්‍රියාකාරකම් භාවිතා කරන්න.

8. NULL හසුරවීමේ හොඳ පුරුදු

NULL දත්ත ගබඩා මෙහෙයුම් වල වැදගත් භූමිකාවක් ගනී, නමුත් එහි විශේෂ ලක්ෂණ නිසා ගැටළු සහ ගැඹුරුකම් ඇති විය හැක. NULL නිවැරදිව හසුරුවීමෙන් දත්ත අඛණ්ඩතාව රැකගත හැකි අතර කාර්යක්ෂම මෙහෙයුමක් සලසා ගත හැක. මෙම කොටසේ, NULL සමඟ වැඩ කිරීමේ හොඳ පුරුදු පිළිබඳ විස්තර කරමු.

දත්ත ගබඩා සැලසුමේ NULL හසුරවීම

  1. NULL ඉඩ දීමට තීරණය කිරීම
  • NULL යනු “අගයක් නොමැත” යන අර්ථය දරයි, නමුත් සෑම තීරුවක්ම NULL ඉඩ දිය යුතු නැත.
  • Examples: wp:list /wp:list
    • අවශ්‍ය ක්ෂේත්‍ර (උදා: පරිශීලක නාමය, විද්‍යුත් තැපැල් ලිපිනය) NOT NULL සීමාවක් තිබිය යුතුය.
    • නියමිතව අගයක් නොමැති විය හැකි ක්ෂේත්‍ර (උදා: මධ්‍යස්ථ ලකුණු, විකල්ප සැකසුම්) NULL ඉඩ දිය හැක.
      CREATE TABLE users (
          id INT AUTO_INCREMENT PRIMARY KEY,
          name VARCHAR(50) NOT NULL,
          email VARCHAR(100) NOT NULL,
          age INT NULL
      );
      
  1. පෙරනිමි අගයන් සකස් කිරීම
  • NULL භාවිතය අවම කිරීමට, හැකි තරම් සුදුසු පෙරනිමි අගයන් නිර්වචනය කරන්න.
    CREATE TABLE orders (
        id INT AUTO_INCREMENT PRIMARY KEY,
        status VARCHAR(20) NOT NULL DEFAULT 'pending'
    );
    

යෙදුම් ස්තරයේ NULL කළමනාකරණය

  1. ආදාන දත්ත වල සත්‍යාපනය
  • පරිශීලකයන් පෝරම හරහා දත්ත ඉදිරිපත් කරන විට, අවශ්‍ය ක්ෂේත්‍ර පිරී ඇති බව තහවුරු කරන්න.
  • දත්ත ගබඩාවට අනිච්චිත NULL අගයන් ඇතුළත් වීම වැළැක්වීමට සේවාදායක-පාර්ශ්ව සත්‍යාපනය එක් කරන්න.
  1. NULL හසුරවීම සම්මත කිරීම
  • යෙදුමේ කේත පදනම තුළ NULL හසුරවීම සමාන්‍ය කරගන්න.
  • උදාහරණය: NULL එක පෙරනිමි අගයක් වෙත පරිවර්තනය කරන උදව්කාරක ක්‍රියාකාරකමක් ලබා දෙන්න.
    def handle_null(value, default):
        return value if value is not None else default
    

විමසුම් ලිවීමේ වැදගත් සැලකිලි

  1. ආරක්ෂිත NULL සසඳුම්
  • NULL සසඳන විට සෑම විටම IS NULL හෝ IS NOT NULL භාවිතා කරන්න.
    SELECT * FROM users WHERE age IS NULL;
    
  1. සංකීර්ණ කොන්දේසි වල NULL හසුරවීම
  • බහු කොන්දේසි සමඟ ප්‍රශ්න ලියන විට, NULL කෙරෙහි පැහැදිලිව සැලකිල්ලට ගන්න.
    SELECT * FROM users WHERE age > 20 OR age IS NULL;
    
  1. එකතු කිරීමේ ප්‍රතිඵලවල NULL ගැන සැලකිල්ල
  • එකතු කිරීමේ ක්‍රියා (SUM, AVG, ආදිය) NULL අගයන් නොසලකා හරියයි. ඔබට NULL අගයන් ගණන පරීක්ෂා කිරීමට අවශ්‍ය නම්, පැහැදිලි කොන්දේසි එක් කරන්න.
    SELECT COUNT(*) AS total_records, COUNT(age) AS non_null_records FROM users;
    

කාර්ය සාධනය සහ කියවීමේ හැකියාව වැඩි කිරීම

  1. ඉන්ඩෙක්ස සහ NULL
  • බොහෝ NULL අගයන් අඩංගු තීරුවල ඉන්ඩෙක්ස භාවිතා කරන විට, ඉන්ඩෙක්ස කාර්යක්ෂමතාවය තහවුරු කරන්න.
  • අවශ්‍ය විට ඉන්ඩෙක්ස නැවත ගොඩනඟා හෝ සකස් කරන්න.
  1. NULL අවම කිරීම
  • නිර්මාණ අදියරේ අනිවාර්ය නොවන NULL භාවිතය අඩු කිරීම, දත්ත ගබඩා කියවීමේ හැකියාව සහ කාර්ය සාධනය වැඩි කරයි.
  • NULL මත බොහෝ විට රඳා නොසිට, පෙරනිමි අගයන් හෝ කොඩි (flags) භාවිතා කරන්න.
    CREATE TABLE users (
        id INT AUTO_INCREMENT PRIMARY KEY,
        age INT NOT NULL DEFAULT 0
    );
    

සාමාන්‍ය වාස්තු විශේෂිත ගැටළු සහ විසඳුම්

  1. ගැටළුව: NULL නිසා අනපේක්ෂිත සෙවුම් ප්‍රතිඵල
  • විසඳුම: ප්‍රශ්නවල IS NULL හෝ IS NOT NULL නිවැරදිව භාවිතා කරන්න.
    SELECT * FROM users WHERE name = 'Taro' OR name IS NULL;
    
  1. ගැටළුව: එකතු කිරීමේ ක්‍රියා වල අනපේක්ෂිත හැසිරීම
  • විසඳුම: NULL ඉවත් කිරීමට හෝ පැහැදිලිව හසුරවීමට කොන්දේසි එක් කරන්න.
    SELECT COUNT(age) FROM users WHERE age IS NOT NULL;
    
  1. ගැටළුව: NULL සහ දත්ත අඛණ්ඩතාව
  • විසඳුම: දත්ත ගබඩා මට්ටමේ NOT NULL සීමා ක්‍රියාත්මක කර, යෙදුම් මට්ටමේ ඇතුළත් කිරීම පරීක්ෂා කරන්න.

සාරාංශය

NULL යනු ශක්තිමත් සංකල්පයක් වන නමුත්, එය නිසි ලෙස හසුරවන්නේ නැති නම් ගැටළු ඇති විය හැක. දත්ත ගබඩා නිර්මාණයේ පැහැදිලි ප්‍රතිපත්තියක් නියම කර, ඔබේ යෙදුමේ සමාන්‍ය හසුරවීම රැකගෙන, NULL-සම්බන්ධ ගැටළු අවම කළ හැක.

9. නිතර අසන ප්‍රශ්න (FAQ)

MySQL හි NULL ගැන ඉගෙන ගනීම්දී, ආරම්භකයින් සහ මධ්‍යම පරිශීලකයින්ට සමහර විට සමාන ප්‍රශ්න ඇති වේ. මෙම කොටසේ, NULL සම්බන්ධ නිතර අසන ප්‍රශ්න සහ ඒවායේ පිළිතුරු සාරාංශ කර ඇත.

Q1: NULL, හිස් පදය (“”), සහ ශූන්‍ය (0) අතර වෙනස කුමක්ද?

  • A1:
  • NULL: අගයක් නොමැති බව (අනිර්වචිත) පෙන්වයි.
  • Empty string (“”): අගයක් ඇත, නමුත් එහි අන්තර්ගතය හිස්ය.
  • Zero (0): අගයක් ඇත, එහි සංඛ්‍යාත්මක අගය 0 වේ.
  • උදාහරණය: INSERT INTO users (name, age) VALUES ('Taro', NULL); -- age is NULL INSERT INTO users (name, age) VALUES ('Hanako', ''); -- age is an empty string INSERT INTO users (name, age) VALUES ('Jiro', 0); -- age is zero

Q2: NULL = NULL සත්‍යය (TRUE) නොලැබෙන්නේ ඇයි?

  • A2:
  • SQL විධාන අනුව, NULL යනු “අදුරු අගයක්” නියෝජනය කරයි. අදුරු අගයන් සසඳීමෙන් අනිර්වචිත ප්‍රතිඵලයක් (NULL) ලැබේ, සත්‍ය (TRUE) හෝ අසත්‍ය (FALSE) නොවේ.
  • NULL සසඳන විට, ඔබට IS NULL හෝ IS NOT NULL භාවිතා කළ යුතුය.
  • උදාහරණය: SELECT NULL = NULL; -- Result: NULL SELECT NULL IS NULL; -- Result: TRUE

Q3: NULL ඇතුළත් දත්ත සෙවීමේදී මොනවාට අවධානය යොමු කළ යුතුද?

  • A3:
  • NULL සමඟ සසඳුම් මෙවලම් (=, <, >, ආදිය) භාවිතා කරන විට, ඔබට අපේක්ෂිත ප්‍රතිඵල නොලැබේ. ඒ වෙනුවට IS NULL හෝ IS NOT NULL භාවිතා කරන්න.
  • උදාහරණය: SELECT * FROM users WHERE age = NULL; -- Incorrect SELECT * FROM users WHERE age IS NULL; -- Correct

Q4: NULL සහ ඉන්ඩෙක්ස සම්බන්ධයෙන් කිසිඳු සැලකිලි තිබේද?

  • A4:
  • NULL අඩංගු තීරුවල ඉන්ඩෙක්ස සෑදිය හැක, නමුත් ඉන්ඩෙක්ස කාර්යක්ෂමතාවය ප්‍රශ්න කොන්දේසි මත පදනම් වේ.
  • විශේෂයෙන්, සංකීර්ණ කොන්දේසි (උදාහරණයක් ලෙස ගණනයන් ඇතුළත්) ඉන්ඩෙක්ස භාවිතය තහනම් කරනු ඇත.
  • ඉන්ඩෙක්ස භාවිතය පරීක්ෂා කිරීම: EXPLAIN SELECT * FROM users WHERE age IS NULL;

Q5: COALESCE සහ IFNULL අතර වෙනස කුමක්ද?

  • A5:
  • COALESCE : බහු ආර්ගුමෙන්ට් ලබාගෙන පළමු non-NULL (NULL නොවන) අගය 반환 කරයි.
  • IFNULL : ආර්ගුමෙන්ට් දෙක ලබාගෙන, පළමු එක NULL නම් දෙවන එක 반환 කරයි.
  • උදාහරණය: SELECT COALESCE(NULL, NULL, 'Default Value', 'Other Value'); -- Result: 'Default Value' SELECT IFNULL(NULL, 'Default'); -- Result: 'Default'

Q6: NULL වලින් වැළැක්වීමට මගේ දත්ත ගබඩාව කෙසේ නිර්මාණය කළ හැකිද?

  • A6:
  • NOT NULL constraints : අවශ්‍ය ක්ෂේත්‍ර වලට සීමා (constraints) එක් කර NULL වැළැක්වීමට.
  • Default values : සුදුසු අවස්ථාවල NULL වෙනුවට පෙරනිමි අගයන් භාවිතා කරන්න.
  • උදාහරණය: CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, age INT NOT NULL DEFAULT 0 );

Q7: එකතු කිරීමේ (aggregate) ක්‍රියාකාරකම් NULL සමඟ වෙනස් ලෙස ක්‍රියා කරන්නේද?

  • A7:
  • එකතු කිරීමේ ක්‍රියාකාරකම් (SUM, AVG, COUNT, ආදිය) NULL අගයන් නොසලකා හරියයි. එහෙත්, NULL අගයන් කීයදැයි පරීක්ෂා කිරීමට අවශ්‍ය නම්, පැහැදිලි කොන්දේසි එක් කළ යුතුය.
  • උදාහරණය: SELECT COUNT(*) AS total_records, COUNT(age) AS non_null_ages FROM users;

Q8: JOIN ක්‍රියාකාරකම් වල NULL ගැටළු ඇති කරන්නේද?

  • A8:
  • NULL අගයන් අඩංගු තීරුවල JOIN ක්‍රියාකාරකම් කරන විට, NULL අගයන් නොගැලපෙන ලෙස සැලකේ. එබැවින්, ඔබට අපේක්ෂිත ප්‍රතිඵල නොලැබිය හැක.
  • විසඳුම: NULL සම්බන්ධයෙන් පැහැදිලිව සලකා බලන ප්‍රශ්න ලියන්න හෝ COALESCE ක්‍රියාවලිය භාවිතා කර NULL එක පෙරනිමි අගයක් සමඟ ප්‍රතිස්ථාපනය කරන්න.
    SELECT *
    FROM table1 t1
    LEFT JOIN table2 t2 ON COALESCE(t1.key, 0) = COALESCE(t2.key, 0);
    

සාරාංශය

NULL යනු MySQL දත්ත ගබඩා මෙහෙයුම් වල විශේෂ සැලසුම් අවශ්‍ය වටිනාකමකි. මෙම FAQ කොටස භාවිතා කර NULL පිළිබඳ ඔබේ අවබෝධය ගැඹුරු කර ගැනීමට සහ එය කාර්යක්ෂමව හසුරවීමට උපදෙස් ලබා ගන්න.

10. නිගමනය

MySQL හි NULL හසුරවීමේ ක්‍රමය අවබෝධ කර ගැනීම දත්ත ගබඩා නිර්මාණය සහ මෙහෙයුම් සඳහා අත්‍යවශ්‍ය කුසලතාවකි. මෙම ලිපියේ අපි NULL හි මූලික අර්ථය, මෙහෙයුම් ක්‍රම, සෙවීම, වර්ගීකරණය, ඉන්ඩෙක්සිං, ප්‍රයෝජනවත් ක්‍රියාකාරකම්, සහ හොඳ පුරුදු පිළිබඳ සියල්ල ආවරණය කර ඇත.

ප්‍රධාන කරුණු

  1. NULL මූලික කරුණු සහ ලක්ෂණ
  • NULL යනු “කිසිදු අගයක් නොමැත” හෝ “අදාල නොවන අගයක්” යන අර්ථය දරයි, එය හිස් පදයක් (“”) හෝ ශුන්‍ය (0) වලින් වෙනස් වේ.
  • IS NULL සහ IS NOT NULL භාවිතා කර NULL ඇතුළත් ආරක්ෂිත සසඳුම් කරන්න.
  1. NULL දත්ත සමඟ වැඩ කිරීම සහ සෙවීම
  • ඔබ NULL අඩංගු දත්ත නිවැරදිව ඇතුළත් කිරීම, යාවත්කාලීන කිරීම, මකා දැමීම, සහ සෙවීම පිළිබඳ ඉගෙන ගත්තා.
  • IS NULL සහ COALESCE වැනි වාක්‍ය රචනා සහ ක්‍රියාකාරකම් භාවිතා කිරීමෙන් ලවච්ච සහ කාර්යක්ෂම මෙහෙයුම් සිදු කළ හැක.
  1. NULL සහ කාර්යක්ෂමතාව
  • අපි NULL අඩංගු තීරුවල ඉන්ඩෙක්සයන්ගේ බලපෑම සහ කාර්යක්ෂමතාව වැඩිදියුණු කිරීමේ නිර්මාණยุත්‍රා ගැන සාකච්ඡා කළෙමු.
  • සුදුසු අවස්ථාවල පෙරනිමි අගයන් සකස් කිරීමෙන් අධික NULL භාවිතය අඩු කිරීමට උපකාරී වේ.
  1. උපයෝගී NULL ක්‍රියාකාරකම්
  • COALESCE, IFNULL, සහ NULLIF වැනි ක්‍රියාකාරකම් සාමාන්‍ය NULL-සම්බන්ධ ගැටළු විසඳීමට උපකාරී වේ.
  • අනපේක්ෂිත හැසිරීම් වැළැක්වීමට <=> මෙහෙයුම්කරු භාවිතා කර ආරක්ෂිත සසඳුම් කරන්න.
  1. හොඳ පුරුදු
  • දත්ත ගබඩා නිර්මාණයේ අනිවාර්ය නොවන NULL භාවිතය අඩු කර, යෙදුම් ස්තරයේ නිසි සත්‍යාපනයක් යොදා දත්ත අඛණ්ඩතාව රැකගන්න.
  • SQL ප්‍රශ්නවල NULL හසුරවීම සම්මත කිරීමෙන් කියවීමට පහසුකම සහ නඩත්තු කිරීමේ හැකියාව වැඩි වේ.

NULL අවබෝධයේ ප්‍රතිලාභ

  • Efficient data operations : NULL නිවැරදිව හසුරවීම අනිවාර්ය නොවන දෝෂ වැළැක්වී, කාර්යක්ෂම ප්‍රශ්න ලිවීමට ඉඩ සලසයි.
  • Improved data integrity : දත්ත ගබඩා නිර්මාණයේ NULL භාවිතය සඳහා පැහැදිලි ප්‍රතිපත්තියක් නියම කිරීමෙන් තවත් සමගාමී දත්ත කළමනාකරණයක් ලැබේ.
  • Increased application reliability : යෙදුම් ස්තරයේ NULL නිවැරදිව හසුරවීමෙන් අනපේක්ෂිත හැසිරීම් සහ දෝෂ වැළැක්විය හැක.

ඊළඟ පියවර

NULL පිළිබඳ ඔබේ අවබෝධය ගැඹුරු කිරීමට පහත කරුණු සලකා බලන්න:

  • ඔබේ වත්මන් ව්‍යාපෘතිවල NULL කෙසේ භාවිතා කර ඇතිදැයි සමාලෝචනය කර, වැඩිදියුණු කළ හැකි ප්‍රදේශ හඳුනා ගන්න.
  • IS NULL, COALESCE, සහ IFNULL වැනි ක්‍රියාකාරකම් සහ මෙහෙයුම්කරු භාවිතා කර සැබෑ දත්ත කට්ටල සමඟ පරීක්ෂා කරන්න.
  • ඔබේ වැඩබරය අනුව ඉන්ඩෙක්සයන් සහ කාර්යක්ෂමතාยุත්‍රා තවත් සුසංවිධානය කරන්න.

මෙම ලිපිය අධ්‍යයනය කිරීමෙන්, ඔබට දැන් MySQL හි NULL කෙසේ ක්‍රියා කරයි සහ ප්‍රායෝගිකව එය කෙසේ හසුරවන්නේද යන්න පිළිබඳ පූර්ණ අවබෝධයක් ලැබේ. මෙම දැනුම භාවිතා කර ඔබේ දත්ත ගබඩා මෙහෙයුම් සහ යෙදුම් සංවර්ධන වැඩපිළිවෙළ වැඩිදියුණු කරන්න.