Új hozzászólás Aktív témák

  • amdni

    aktív tag

    Üdv mindenkinek!

    Mysql-ből 1 valamit nem értek, hiába olvasok utána, valami nem stimmel, bízom benne, hátha itt valaki el tudja magyarázni hogy meg értsem.

    pl egy nagyon egyszerű példa:

    CREATE TABLE `osztaly` (
    `id` int(1),
    `osztaly` char(1),
    PRIMARY KEY (`id`),
    foreign key (id) references tanulok (osztaly)
    );

    CREATE TABLE `tanulok` (
    `kulcs` int(1),
    `nev` varchar(30),
    `osztaly` int(1),
    PRIMARY KEY (`kulcs`)
    );

    Tehát itt most 1:1 kapcsolat áll fenn? Mit kellene átírni hogy 1:N(egy -több) vagy N:M (több-több) kapcsolat áll fenn?
    A másik hogy mi értelme ennek?
    pl:
    insert into osztaly values(3, 'B');
    insert into tanulok values(1, 'Béla', 3);

    És mikor lekérdezem:
    select * from osztaly join tanulok on osztaly.id = tanulok.osztaly;
    De ez akkor is működik ha nem használok foreign key-t. Tehát mi értelme? Mire jó az idegen kulcs?

    Előre is köszi a segítséget!

Új hozzászólás Aktív témák