Կարճ պատասխան. Այո, այն կարող է լինել NULL կամ կրկնօրինակ Ես ուզում եմ բացատրել, թե ինչու օտարերկրյա բանալին պետք է լինի զրոյական կամ պետք է լինի եզակի կամ ոչ եզակի: Նախ հիշեք, որ Արտաքին բանալին պարզապես պահանջում է, որ այդ դաշտի արժեքը նախ պետք է գոյություն ունենա մեկ այլ աղյուսակում (հիմնական աղյուսակ): Դա այն ամենն է, ինչ FK-ն ըստ սահմանման է:
Կարո՞ղ է լինել null արտաքին բանալիում:
Զուրկ արժեքներ պարունակող օտարերկրյա բանալին չի կարող համապատասխանել մայր բանալի արժեքներին, քանի որ մայր բանալին ըստ սահմանման չի կարող չունենալ զրոյական արժեքներ: Այնուամենայնիվ, զրոյական օտարերկրյա բանալու արժեքը միշտ վավեր է՝ անկախ դրա ոչ զրոյական մասերից որևէ մեկի արժեքից: … Օտարերկրյա բանալի արժեքը զրոյական է, եթե որևէ մաս զրոյական է:
Կարո՞ղ է օտարերկրյա բանալին զրոյական լինել mySQL-ին:
5 Պատասխաններ: NULL-ները օտար ստեղների մեջ միանգամայն ընդունելի են Օտար բանալիներում NULL-ների հետ գործ ունենալը բարդ է, բայց դա չի նշանակում, որ դուք փոխում եք այդպիսի սյունակները NOT NULL-ի և տեղադրում եք կեղծ ("N/A", "Անհայտ". ", "No Value" և այլն) գրառումները ձեր տեղեկատու աղյուսակներում։
Ինչպե՞ս եք օտարերկրյա բանալին null-ի համար սահմանում:
օտարերկրյա բանալին չի կարող լռելյայնորեն զրոյական լինել mySQL-ում, պատճառը պարզ է, եթե հղում անեք ինչ-որ բանի և թույլ տաք, որ այն չեղարկվի, դուք կկորցնեք տվյալների ամբողջականությունը: երբ ստեղծեք աղյուսակի հավաքածուն, թույլատրեք null-ինՈՉ, ապա կիրառեք օտար բանալիների սահմանափակումը:
Ո՞ր ստեղները կարող են զրոյական լինել:
Հիմնական բանալի սյունակ արժեքը չի կարող զրոյական լինել: Թեկնածու հիմնական սյունակը կարող է ունենալ զրոյական արժեք: Հիմնական բանալին ցանկացած հարաբերության կամ աղյուսակի ամենակարևոր մասն է: