(бағандар) кезде баған бастапқы кілт бӛлігі емес,
бірақ соған
қарамастан, оның мағынасы әрқашан бірегей болуы керек. бастапқы
кілт ата-ана мен бала кестеде арасындағы сілтемелер тҧтастығын
қамтамасыз ету ҥшін пайдаланылуы мҥмкін
осы атрибуты баған
жариялады. Ата-аналық кестеге қосылу ҥшін шетел кілті бала
кестесінде жасалады. Кестеде бірнеше UNIQUE тҧтастығы
шектеулерін жасауға болады.
FOREIGNKEY
- сыртқы кілт, бағынышты кестеде сілтеме
тҧтастығын қамтамасыз ету ҥшін жасалады.
Сытқы кілт анықтамасы форматы:
FOREIGNKEY(<бағынышты кесте бағандарының тізімі>)
REFERENCES<басты кестенің атауы>
[<басты кесте бағандарының атауы>]
[ONDELETE {NOACTION|CASCADE|SETDEFAULT|SETNULL}]
[ONUPDATE {NOACTION|CASCADE|SETDEFAULT|SETNULL}]
Бағынысты кестенің бағандарының тізімі сыртқы кілтіне енгізілген
ӛрістерді қамтиды. Негізгі кестенің
бағандар тізімі кестелерді
байланыстыру кілті болып табылатын ӛрістерді қамтиды (ата-аналық
кестемен қосылым бастапқы кілтпен орындалса,
тізім жоғалуы
мҥмкін).
ONDELETE, ONUPDATE қосымша параметрлер ата-аналық
кестенің бастапқы кілті жойылған және ӛзгертілген кезде сервердің не
істеу керектігін анықтайды:
■
NOACTION — бала кестесінде
бағынышты жазбалар болса, бас
кестесіндегі тиісті жазбаларды жою немесе ӛзгертуге тыйым
салынады;
■
CASCADE—
бас кестедегі жазбаны жойғанда, еншілес кестедегі
барлық
бағынышты жазбалар жойылады; жазбалар ӛзгертілген
кезде, еншілес кестенің барлық бағынатын жазбаларындағы кілт
ӛрісінің мәндері;
■
SETDEFAULT— бас кестесіндегі
жазбаларды жойғанда немесе
ӛзгерткенде, бала кестесінің барлық жазбаларындағы кілт ӛрісі ӛріс
анықтамасында кӛрсетілген әдепкі мән беріледі; Егер бҧл мән
бастапқы кілтде болмаса, ерекше жағдай туындайды; және сілтеме
тҧтастығын анықтау кезінде пайдаланылатын әдепкі мән, кейінірек
бҧл мән ӛзгертілсе, SETDEFAULT параметрімен тҧтастық
тҧтастығы бҧрынғы мәнді пайдаланады;
■
SETNULL— бала кестесінің бағынышты
жазбаларының негізгі
ӛрісінде бос мән NULL деп орнатылады.
Достарыңызбен бөлісу: