Voiko yhdellä ensisijaisella avaimella olla kaksi vierasavainta?
Voiko yhdellä ensisijaisella avaimella olla kaksi vierasavainta?

Video: Voiko yhdellä ensisijaisella avaimella olla kaksi vierasavainta?

Video: Voiko yhdellä ensisijaisella avaimella olla kaksi vierasavainta?
Video: Murros mallissa tai markkinassa – uusi mahdollisuus haastaa 2024, Joulukuu
Anonim

Se sopii täydellisesti on kaksi vierasavainta sarakkeet, jotka viittaavat samaan pääavain sarakkeessa eri taulukossa, koska jokainen vieras avain arvo tahtoa viittaa toiseen tietueeseen liittyvässä taulukossa.

Voiko tässä kahdesta vierasavaimesta muodostaa ensisijaisen avaimen?

Se on mahdotonta saada kaksi ensisijaista avainta . Se on yksi syy siihen, että sitä kutsutaan " ensisijainen ", koska jos olisit kaksi , yksi ei voisi olla ensisijainen , mutta toissijainen ensisijainen.

Tämän jälkeen kysymys kuuluu, voiko ensisijainen avain olla vierasavain useissa taulukoissa? Esimerkiksi, vieras avain tulee viitata a pääavain tai ainutlaatuinen rajoitus, vaikka viittaus voi olla samoilla linjoilla pöytä tai a eri pöytä . Vieras avain sarakkeita voi sisältävät NULL-arvoja.

Voiko sinulla vastaavasti olla useita vieraita avaimia?

Pöytä voi on useita vieraita avaimia , ja jokainen vieraalla avaimella voi olla eri vanhempien taulukko. Jokainen vieras avain tietokantajärjestelmä valvoo sitä itsenäisesti. Siksi taulukoiden väliset peräkkäiset suhteet voi perustetaan käyttämällä vieraita avaimia.

Voimmeko lisätä kaksi vierasavainta taulukkoon?

Kyllä, MySQL sallii tämän. Sinä pystyt omistaa useita vieraita avaimia samalla pöytä . The vieraita avaimia mallissasi (tilin_nimi ja tilityyppi) tehdä eivät vaadi erityiskäsittelyä tai syntaksia. Näyttää siltä, että ainakin yksi näistä tapauksista koskee Asiakkaan ID- ja Nimi-sarakkeita pöytä.

Suositeltava: