Hirdetés
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- iPhone topik
- Fittyet hány a pesti napfényre a Honor 600
- Microsoft Rewards
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Bemutatkozott az Oppo kamerás csúcsmodellje
- Xiaomi 15T Pro - a téma nincs lezárva
- Apple iPhone 17 Pro Max – fennsík
- Macrodroid
Ú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) -
bpx
őstag
Mert pl. lehet, hogy tiltva van. Ennek by default 1-et kellene visszadni global és session szinten is:
SELECT @@GLOBAL.foreign_key_checks, @@SESSION.foreign_key_checks;Ha viszont 0, akkor nem történik meg a foreign keyek ellenőrzése, és büntetlenül lehet azt megsértő adatokat bevinni.
-
Doink
aktív tag
MariaDB [test2]> CREATE TABLE osztaly (
-> id INT NOT NULL AUTO_INCREMENT,
-> PRIMARY KEY (id)
-> );
Query OK, 0 rows affected (0.03 sec)
MariaDB [test2]> CREATE TABLE diak (
-> id INT NOT NULL AUTO_INCREMENT,
-> osztaly_id INT,
-> PRIMARY KEY (id),
-> FOREIGN KEY (osztaly_id) REFERENCES osztaly(id)
-> );
Query OK, 0 rows affected (0.03 sec)
MariaDB [test2]> SHOW CREATE TABLE diak;
+-------+--------------+
| Table | Create Table |
+-------+--------------+
| diak | CREATE TABLE `diak` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`osztaly_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `osztaly_id` (`osztaly_id`),
CONSTRAINT `diak_ibfk_1` FOREIGN KEY (`osztaly_id`) REFERENCES `osztaly` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
+-------+--------------+
1 row in set (0.00 sec)
MariaDB [test2]> INSERT INTO diak (osztaly_id) VALUES(9999);
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails
(`test2`.`diak`, CONSTRAINT `diak_ibfk_1` FOREIGN KEY (`osztaly_id`) REFERENCES `osztaly` (`id`))
MariaDB [test2]> INSERT INTO diak (osztaly_id) VALUES(9999);
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`test2`.`diak`, CONSTRAINT `diak_ibfk_1` FOREIGN KEY (`osztaly_id`) REFERENCES `osztaly` (`id`))
MariaDB [test2]> INSERT INTO osztaly (id) VALUES(1);
Query OK, 1 row affected (0.01 sec)
MariaDB [test2]> INSERT INTO diak (osztaly_id) VALUES(1);
Query OK, 1 row affected (0.01 sec) -
Doink
aktív tag
Hogy kikényszerítsd a valid értéket a mezőre.
Például ilyet ne csinálhass ha nincs 99999 ID-jű osztály:
insert into osztaly values(3, 'B');
insert into tanulok values(1, 'Béla', 99999);Egyébként ez egy one-to-many mert (1osztály)-(sok gyerek) de egy gyerek csak 1 osztályba jár.
Ha egy gyerek több osztályba is jár akkor lesz many-to-many.
Új hozzászólás Aktív témák
Hirdetés
- RAM topik
- exHWSW - Értünk mindenhez IS
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- Luck Dragon: Asszociációs játék. :)
- Cyberpunk 2077
- Melyik tápegységet vegyem?
- Vezeték nélküli fejhallgatók
- A fociról könnyedén, egy baráti társaságban
- iPhone topik
- Kerékpárosok, bringások ide!
- További aktív témák...
- REVELAL K2Y-PRO16 16BIT ISA HANGKÁRTYA
- ÚJ! Raspberry Pi 4 Model B 4GB+táp+ ház+sd kártya+micro hdmi
- Intel Core ULTRA 9 285K +32GB 7600MHz Patriot Viper XTREME 5 DDR5 kit! (Bolti ár: kb 600ezer Ft!)
- Új! Kingston ValueRAM 8GB DDR4 3200MHz KVR32S22S8/8
- Számítógép, Laptop, I3-7.gen, 8GB DDR4, 240GB ssd, magyar bill, 15,6"-os Full HD kép, gyári töltő
- 27% - Konfiguráció G5905 / RX580 / H510 / 16GB 2666Mhz / 1TB SSD / 500W
- Microsoft: Windows / Office / Server / Stb.
- BESZÁMÍTÁS! Lenovo Legion Go 512GB SSD kézikonzol garanciával, hibátlan működéssel
- Itachi! Felsőkategóriás Gamer PC! Csere-Beszámítás! R7 9800X3D/ 9070XT / 32GB DDR5 / 2TB Nvme SSD
- Lenovo Thinkpad L490,HD,14",i5-8365U,8GB DDR4,256GB SSD,WIN11
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


