· 8 years ago · Mar 02, 2018, 04:46 PM
1Virhe: #1217 - Cannot delete or update a parent row: a foreign key constraint fails
2
3SET GLOBAL sql_mode='STRICT_ALL_TABLES';
4CREATE DATABASE IF NOT EXISTS t3_7;
5USE t3_7;
6
7DROP TABLE IF EXISTS Ilmoitus;
8DROP TABLE IF EXISTS Kirjautuminen;
9DROP TABLE IF EXISTS Kayttajataso;
10DROP TABLE IF EXISTS Kayttaja;
11
12CREATE TABLE Kayttaja (
13 kayttaja VARCHAR(10) NOT NULL PRIMARY KEY,
14 salasana VARCHAR(20) NOT NULL,
15 etunimi VARCHAR(30),
16 sukunimi VARCHAR(30),
17 syntymaaika DATE,
18 kayttajataso VARCHAR(10) NOT NULL,
19 FOREIGN KEY (kayttajataso) REFERENCES Kayttajataso(kayttajataso)
20 ON UPDATE CASCADE ON DELETE CASCADE
21) ENGINE=INNODB;
22
23CREATE TABLE Kayttajataso (
24 kayttajataso VARCHAR(10) NOT NULL PRIMARY KEY
25) ENGINE=INNODB;
26
27CREATE TABLE Kirjautuminen (
28 kirjautuminen DATETIME NOT NULL PRIMARY KEY,
29 iposoite VARCHAR(20) NOT NULL,
30 kayttaja VARCHAR(10) NOT NULL,
31 FOREIGN KEY (kayttaja) REFERENCES Kayttaja(kayttaja)
32 ON UPDATE CASCADE ON DELETE CASCADE
33) ENGINE=INNODB;
34
35CREATE TABLE Ilmoitus (
36 ilmoitus DATE NOT NULL PRIMARY KEY,
37 otsikko VARCHAR(50) NOT NULL,
38 sisalto VARCHAR(300) NOT NULL,
39 kayttaja VARCHAR(10) NOT NULL,
40 FOREIGN KEY (kayttaja) REFERENCES Kayttaja(kayttaja)
41 ON UPDATE CASCADE ON DELETE CASCADE
42) ENGINE=INNODB;
43
44INSERT INTO Kayttaja (kayttaja, salasana, etunimi, sukunimi, kayttajataso)
45VALUES ("pekka", "salasana", "Pekka", "Pekkanen", "admin");
46
47INSERT INTO Kayttajataso (kayttajataso)
48VALUES ("admin");
49
50INSERT INTO Kirjautuminen (kirjautuminen, iposoite)
51VALUES ("2014-12-12 09:12:10", "123.1.88.10"), ("2015-01-13 23:11:01", "123.1.88.10");
52
53INSERT INTO Kayttaja (kayttaja, salasana, etunimi, sukunimi, kayttajataso)
54VALUES ("aulis", "aulis", "Aulis", "Antikainen", "user");
55
56INSERT INTO Kayttajataso (kayttajataso)
57VALUES ("user");
58
59INSERT INTO Kirjautuminen (kirjautuminen, iposoite)
60VALUES ("2015-1-22 13:33:32", "100.80.137.1");
61
62INSERT INTO Kayttaja (kayttaja, salasana, etunimi, sukunimi, kayttajataso)
63VALUES ("eicca", NULL, "Einari", NULL, "guest");
64
65INSERT INTO Kayttajataso (kayttajataso)
66VALUES ("guest");
67
68INSERT INTO Kirjautuminen (kirjautuminen, iposoite)
69VALUES (NULL, NULL);
70
71INSERT INTO Kayttaja (kayttaja, salasana, etunimi, sukunimi, kayttajataso)
72VALUES ("ansku", NULL, "Anneli", NULL, "guest");
73
74INSERT INTO Kayttajataso (kayttajataso)
75VALUES ("guest");
76
77INSERT INTO Kirjautuminen (kirjautuminen, iposoite)
78VALUES (NULL, NULL);
79
80INSERT INTO Ilmoitus (ilmoitus, otsikko, sisalto, kayttaja)
81VALUES ("2014-12-12 12:02:22", "Testi", "Olinks eka?", "pekka");
82
83INSERT INTO Ilmoitus (ilmoitus, otsikko, sisalto, kayttaja)
84VALUES ("2015-01-13 23:13:33", "Hiljaista", "Eikö täällä ole ketään muita?", "pekka");
85
86INSERT INTO Ilmoitus (ilmoitus, otsikko, sisalto, kayttaja)
87VALUES("2015-01-13 13:36:00", "Auliksen viesti", "Hei kaikille! Olen Aulis", "aulis");