Új hozzászólás Aktív témák
-
amdni
aktív tag
Próbáltam MariaDB-is a dolgot, de itt sem írja ki a show create table diak a foreign key sort.
MariaDB [adatbazis1]> create table osztaly(
-> id int(4) primary key auto_increment,
-> osztalynev char(1)
-> );
Query OK, 0 rows affected (0.019 sec)MariaDB [adatbazis1]>
MariaDB [adatbazis1]>
MariaDB [adatbazis1]> create table diak(
-> id int(4) primary key auto_increment,
-> osztaly_id int(4),
-> foreign key (osztaly_id) references osztaly(id)
-> );
Query OK, 0 rows affected (0.007 sec)MariaDB [adatbazis1]> show create table diak;
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| diak | CREATE TABLE `diak` (
`id` int(4) NOT NULL AUTO_INCREMENT,
`osztaly_id` int(4) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `osztaly_id` (`osztaly_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 |
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.017 sec) -
amdni
aktív tag
mysql> SELECT @@GLOBAL.foreign_key_checks, @@SESSION.foreign_key_checks;
+-----------------------------+------------------------------+
| @@GLOBAL.foreign_key_checks | @@SESSION.foreign_key_checks |
+-----------------------------+------------------------------+
| 1 | 1 |
+-----------------------------+------------------------------+
1 row in set (0.01 sec)Úgy látom hogy ez jó, de nálam mégsem jó valami...

-
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
(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
- Lenovo ThinkPad T14 Gen 1 i5-10210 / 16GB RAM/ 256GB NVMe SSD világítós EU bill, kiváló állapotban
- vizes GAMER PC - RYZEN 5 7600X / 32GB DDR5 / RTX 5070 12GB
- HP EliteBook 840 G7 i5-10210U / 16GB RAM / 256GB SSD Szép állapot, EU bill, gyári töltő
- A KINCS ! Új HP EliteBook 860 G10 Profi Fémházas Laptop -50% 16" i7-1355U 32/1TB FHD+ IPS MATT
- Dobozos DELL Inspiron 16 Fémházas Multimédiás Laptop 16" -30% Ryzen 7 8840U 8mag 16/1TB FHD+ IPS
- Akció!!! Sosemhasznált! HP OmniBook 5 i5-1334U 16GB 512GB 16" FHD+ Gar.: 1 év
- Apple iPhone 11 Pro Max 256GB - Kártyafüggetlen, Grafit, 100% Akku - 1 Év Garanciával
- Apple iPhone 14 Pro / 128GB / Kártyafüggetlen / 12Hó Garancia / Akku: 86%
- Dell 27" USB-C Hub Monitor - P2723DE - 27% ÁFÁs
- Dell Precision 5520 15,6" FHD, Xeon E3-1505M v6, 16GB RAM, Quadro 4GB VGA, SSD, jó akku, számla, gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

(egy -több) vagy N:M (több-több) kapcsolat áll fenn?