Sobes.tech
Junior — Middle

Կարող է արդյոք սահմանել NULL արժեք տվյալների բազայում հիմնական բանալի համար?

sobes.tech AI

Պատասխան AI-ից

Ամենաշատ ռելացիոն տվյալների բազաներում, PRIMARY KEY (Առաջին հիմնական բանալին) չի կարող ընդունել NULL արժեք։ Դա կապված է այն բանի հետ, որ հիմնական բանալին ծառայում է գրառման եզակի նույնականացման համար, և նրա արժեքը պետք է լինի եզակի և պարտադիր։

Եթե փորձեք ավելացնել NULL արժեք PRIMARY KEY-ով նշված դաշտում, տվյալների բազան կցուցադրի սխալ։

Եթե անհրաժեշտ է դաշտ, որը կարող է լինել դատարկ, բայց միևնույն ժամանակ եզակի, կարող եք օգտագործել եզակի ինդեքս (UNIQUE) առանց NOT NULL սահմանափակման, բայց դա չի լինի հիմնական բանալին։

Այսպիսով, PRIMARY KEY-ի համար NULL արժեք սահմանելը հնարավոր չէ ռելացիոն տվյալների բազաների ստանդարտների համաձայն։