Sukurkite SQL išorinį raktą

Paskutinis atnaujinimas: 2024-09-01

Jei siekiate išmokti Sukurkite SQL išorinį raktą, jūs atvykote į reikiamą vietą. Užsienio raktas SQL yra laukas arba laukų rinkinys vienoje lentelėje, nurodantis pirminį raktą kitoje lentelėje. Tai leidžia nustatyti ryšį tarp abiejų lentelių, o tai būtina norint išlaikyti duomenų vientisumą reliacinėje duomenų bazėje. Toliau parodysime, kaip paprastai ir efektyviai sukurti išorinį raktą SQL.

– Žingsnis po žingsnio ➡️ Sukurkite SQL užsienio raktą

  • 1 veiksmas: Pirma, prieš kuriant išorinį raktą SQL, svarbu nustatyti lenteles ir stulpelius, kurie bus prijungti.
  • 2 veiksmas: Nustačius lenteles ir stulpelius, pašalinis raktas sukuriamas naudojant šią SQL komandą: ALTER TABLE [paskirties_lentelė] ADD CONSTRAINT ‍ [užsienio_rakto_pavadinimas] ⁢ UŽSIENIO RAKTAS ([paskirties_stulpelis]) NUORODOS [šaltinio_lentelė]([šaltinio_stulpelis]);
  • 3 veiksmas: ⁤ Svarbu užtikrinti, kad išorinio rakto stulpelyje esantys duomenys sutaptų su nuorodos stulpelio duomenimis.
  • 4 veiksmas: Jei reikia, tokios sąlygos kaip ON DELETE ir ON UPDATE ⁤Svetimo klavišo elgsenai nurodyti, kai šaltinio lentelės įrašas ištrinamas arba atnaujinamas.
  • 5 veiksmas: Galiausiai, sukūrus svetimą raktą, jo egzistavimą galima patikrinti naudojant komandą RODYTI KURTI LENTELĘ [lentelės_pavadinimas];
Išskirtinis turinys – spustelėkite čia  Kaip replikuoti duomenų bazes MariaDB?

Klausimai ir atsakymai

Kas yra užsienio raktas SQL?

  1. Išorinis raktas yra lentelės laukas, susijęs su kitos lentelės pirminiu raktu.
  2. Jis naudojamas santykiams tarp dviejų lentelių reliacinėje duomenų bazėje nustatyti.

Kodėl svarbu sukurti išorinį raktą SQL?

  1. Išorinis raktas užtikrina nuorodinį duomenų vientisumą tarp lentelių.
  2. Tai leidžia išlaikyti duomenų nuoseklumą ir išvengti problemų, tokių kaip našlaičiai duomenys ar neatitikimai.

Kaip sukurti išorinį raktą SQL?

  1. Pirmiausia nustatykite lauką, kuris lentelėje veiks kaip išorinis raktas.
  2. Tada nurodykite lentelę ir lauką, į kurį bus nuoroda užsienio raktas.
  3. Galiausiai naudokite teiginį ALTER TABLE, kad į lentelę įtrauktumėte išorinį raktą.

Kokia yra užsienio rakto kūrimo sintaksė SQL?

  1. ALTER TABLE nombre_tabla
  2. ADD CONSTRAINT užsienio_rakto_vardas FOREIGN ‍KEY ‌(stulpelis) ‌NUORODOS nuoroda_lentelė(nurodyta_stulpelis);

Kokią naudą duoda užsienio raktų naudojimas SQL?

  1. Pagerina duomenų bazėje esančių duomenų vientisumą ir nuoseklumą.
  2. Tai palengvina duomenų bazės priežiūrą, nes išvengiama duomenų dubliavimo ir nuorodų klaidų.
Išskirtinis turinys – spustelėkite čia  Efektyvus duomenų valdymas naudojant SQLite Manager

Ar SQL galima pakeisti arba ištrinti pašalinius raktus?

  1. Taip, pašalinius raktus galima keisti arba ištrinti naudojant ALTER TABLE teiginį.
  2. Norėdami pakeisti pašalinį raktą, naudokite DROP teiginį ir pridėkite naują išorinį raktą su nauja konfigūracija.

Kaip SQL lentelėje atpažįstami užsienio raktai?

  1. Lentelėje esančius pašalinius raktus galite identifikuoti pasižiūrėję į lentelės apibrėžimą duomenų bazės valdymo sistemoje.
  2. Apibrėžime bus rodomi išoriniai raktai su jų pavadinimu, susietu lauku ir nuoroda į lentelę.

Ar galima sukurti išorinį raktą, kuris nukreiptų į kelis laukus kitoje lentelėje?

  1. Taip, galima sukurti išorinį raktą, kuris nukreiptų į kelis laukus kitoje lentelėje.
  2. Turite apibrėžti išorinį raktą, naudodami laukų sąrašą, skirtą nuorodai nurodytoje lentelėje.

Kas atsitiks, jei bandysiu pridėti pašalinį raktą, kuris nurodo neegzistuojantį lauką kitoje lentelėje?

  1. Užsienio rakto kūrimo operacija nepavyks ir bus rodomas klaidos pranešimas, nurodantis, kad nurodyto lauko minėtoje lentelėje nėra.
  2. Prieš kurdami išorinį raktą, turite įsitikinti, kad nurodytas laukas yra lentelėje.
Išskirtinis turinys – spustelėkite čia  Kaip duomenys yra apsaugoti „Redshift“ sistemoje?

Ar galiu sukurti svetimą raktą tuščioje SQL lentelėje?

  1. Taip, tuščioje lentelėje galite sukurti išorinį raktą.
  2. Duomenų buvimas lentelėje neturi įtakos išorinio rakto sukūrimui.