
2025 Автор: Lynn Donovan | [email protected]. Акыркы өзгөртүү: 2025-01-22 17:31
INSERT INTO product VAVAES (11, "Джо үчүн", 1); INSERT INTO product VALUES (22, "бардыгы үчүн", НӨЛ ); Бул нөлгө ээ болуу толук мыйзамдуу чет элдик ачкыч тилке.
Ошондой эле суроо туулат, чет элдик ачкыч нөл болушу мүмкүнбү?
А чет элдик ачкыч анын таблицасын ата-энелик таблица деп аталган башка таблицага көз каранды кылат. А чет элдик ачкыч камтыган нөл баалуулуктар ата-эненин баалуулуктарына дал келбейт ачкыч , ата-энеден бери ачкыч аныктама боюнча болот жок нөл баалуулуктар. Бирок, а null чет элдик ачкыч баалуулугу, анын кандайдыр бир баалуулугуна карабастан, ар дайым жарактуу нөл бөлүктөр.
Кошумча, PostgreSQLге чет өлкөлүк ачкычты кантип кошом? КОШУУ CONSTRAINT чектөө_аты Тышкы ачкыч (c1) RERERENCES parent_table (p1); Кааласаңыз, акыркы эскертүү чет элдик ачкыч кошуу Учурдагы таблицага ON DELETE CASCADE менен чектөө, сиз төмөнкү кадамдарды жасашыңыз керек: Учурдагыларды өчүрүү чет элдик ачкыч чектөө. кошуу жаңы чет элдик ачкыч ON DELETE CASCADE аракети менен чектөө.
Анда чет өлкөлүк ачкыч null MySQL болушу мүмкүнбү?
5 Жооптор. NULLs in чет өлкөлүк ачкычтар толугу менен кабыл алынат. NULL менен иштөө чет өлкөлүк ачкычтар татаал, бирок бул сиз мындай мамычаларды ЭМЕС деп өзгөртөсүз дегенди билдирбейт НӨЛ жана шилтеме таблицаларыңызга жасалма ("Жок", "Белгисиз", "Баалуу жок" ж.б.) жазууларды киргизиңиз.
Чет элдик ачкычтар керекпи?
Максатынан бери чет элдик негизги шилтеме столдун белгилүү бир катар аныктоо болуп саналат, ал жалпысынан болуп саналат талап кылынат ошол чет элдик ачкыч талапкерге барабар киргизиңиз негизги таблицанын кээ бир саптары же мааниси жок (NULL мааниси.). Бул эреже эки таблица ортосундагы шилтеме бүтүндүгүн чектөө деп аталат.
Сунушталууда:
Колоннада бир нече чет өлкөлүк ачкыч болушу мүмкүнбү?

Теориялык жактан бир тилкеде бир нече чет өлкөлүк ачкычты колдонууга болбойт. Же болбосо, сиз бир нече таблицадагы киргизүүнү текшерип, керектүү операцияны жасай турган процедураларды колдонуу менен ишке ашыра аласыз
Сизде бир нече чет элдик ачкычтар болушу мүмкүнбү?

Таблицада бир нече чет өлкөлүк ачкычтар болушу мүмкүн, жана ар бир чет өлкөлүк ачкыч башка негизги таблицага ээ болушу мүмкүн. Ар бир чет ачкыч маалымат базасы системасы тарабынан өз алдынча ишке ашырылат. Демек, таблицалардын ортосундагы каскаддык мамилелер чет өлкөлүк ачкычтарды колдонуу менен түзүлүшү мүмкүн
Чет элдик ачкыч тилкесинде нөл маанини киргизсек болобу?

Тышкы ачкычтагы NULL маанилери Мамычаларында NOT NULL калтырылган чет өлкөлүк ачкыч, негизги ачкычта NULL маанилери жок болсо да, NULL маанилерин камтышы мүмкүн. Ошентип, сиз алардын тышкы ачкычы али белгисиз болсо дагы, саптарды таблицага киргизе аласыз
Негизги ачкыч чет өлкөлүк ачкыч болушу мүмкүнбү?

Негизги ачкычтар ар дайым уникалдуу болушу керек, эгерде таблица бирден көпкө байланыш болсо, чет өлкөлүк ачкычтар уникалдуу эмес маанилерге уруксат бериши керек. Эгерде таблица бирден көпкө эмес, бирден-бирге байланыш менен туташтырылса, негизги ачкыч катары чет өлкөлүк ачкычты колдонуу эң сонун
Чет элдик ачкыч башка чет элдик ачкычка шилтеме кыла алабы?

1 Жооп. Чет өлкөлүк ачкыч уникалдуу катары аныкталган ар кандай талаага кайрыла алат. Эгерде ошол уникалдуу талаа өзү чет өлкөлүк ачкыч катары аныкталса, анда эч кандай айырмасы жок. Эгерде ал уникалдуу талаа болсо, ал дагы башка ФКнын бутасы болушу мүмкүн