Leser: 1
![]() |
|< 1 2 3 4 >| | ![]() |
35 Einträge, 4 Seiten |
1
2
3
4
5
6
7
8
9
mysql> select * from meeting_teilnehmer;
+------------+---------------+
| meeting_id | teilnehmer_id |
+------------+---------------+
| 1 | 0 |
| 1 | 1 |
| 1 | 2 |
+------------+---------------+
3 rows in set (0.00 sec)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
create database teammeeting;
use teammeeting;
create table meetings
(
ID INT AUTO_INCREMENT PRIMARY KEY,
`author` VARCHAR(64),
`startzeit` VARCHAR(64),
`endzeit` VARCHAR(64),
`thema` TEXT,
`aktion` VARCHAR(1),
`bearbeitung` VARCHAR(64),
`termin` VARCHAR(64),
`erstellung` VARCHAR(10),
)
;
CREATE TABLE `teilnehmer`
(
`id` int(11) AUTO_INCREMENT NOT NULL,
`vorname` varchar(50) NULL,
`nachname` varchar(50) NULL,
PRIMARY KEY(`id`)
);
CREATE TABLE `meeting_teilnehmer`
(
`meeting_id` int(11) NOT NULL,
`teilnehmer_id` int(11) NOT NULL
);
ALTER TABLE `meeting_teilnehmer`
ADD CONSTRAINT `recipient_id`
FOREIGN KEY(`meeting_id`, `teilnehmer_id`)
REFERENCES `teilnehmer`(`id`, `id`);
ALTER TABLE `meeting_teilnehmer`
ADD CONSTRAINT `meeting_id`
FOREIGN KEY(`meeting_id`, `teilnehmer_id`)
REFERENCES `meetings`(`id`, `id`);
INSERT INTO teilnehmer (vorname, nachname) VALUES ('Florian', 'Lüttgens');
INSERT INTO teilnehmer (vorname, nachname) VALUES ('Jahan', 'Ketabchy');
INSERT INTO teilnehmer (vorname, nachname) VALUES ('Thomas', 'Koch');
INSERT INTO teilnehmer (vorname, nachname) VALUES ('Ingo', 'Praum');
INSERT INTO teilnehmer (vorname, nachname) VALUES ('Michael', 'Schroeder');
INSERT INTO teilnehmer (vorname, nachname) VALUES ('Uwe', 'Bergefeld');
INSERT INTO teilnehmer (vorname, nachname) VALUES ('Horst', 'Billion');
ALTER TABLE meetings ENGINE=InnoDB;
ALTER TABLE meeting_teilnehmer ENGINE=InnoDB;
ALTER TABLE teilnehmer ENGINE=InnoDB;
show create table meeting_teilnehmer
1
2
3
4
5
6
7
8
9
10
11
12
13
mysql> show create table meeting_teilnehmer;
+--------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+--------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| meeting_teilnehmer | CREATE TABLE `meeting_teilnehmer` (
`meeting_id` int(11) NOT NULL,
`teilnehmer_id` int(11) NOT NULL,
KEY `meeting_id` (`meeting_id`,`teilnehmer_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
+--------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql>
QuoteFor storage engines other than InnoDB, MySQL Server parses the FOREIGN KEY syntax in CREATE TABLE statements, but does not use or store it.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
mysql> create database teammeeting;
Query OK, 1 row affected (0.00 sec)
mysql> use teammeeting;
Database changed
mysql> create table meetings
-> (
-> ID INT AUTO_INCREMENT PRIMARY KEY,
-> `author` VARCHAR(64),
-> `startzeit` VARCHAR(64),
-> `endzeit` VARCHAR(64),
-> `thema` TEXT,
-> `aktion` VARCHAR(1),
-> `bearbeitung` VARCHAR(64),
-> `termin` VARCHAR(64),
-> `erstellung` VARCHAR(10)
-> )
-> TYPE=INNODB
-> ;
Query OK, 0 rows affected (0.03 sec)
mysql>
mysql> CREATE TABLE `teilnehmer`
-> (
-> `id` int(11) AUTO_INCREMENT NOT NULL,
-> `vorname` varchar(50) NULL,
-> `nachname` varchar(50) NULL,
-> PRIMARY KEY(`id`)
-> )
-> TYPE=INNODB
-> ;
Query OK, 0 rows affected (0.01 sec)
mysql>
mysql> CREATE TABLE `meeting_teilnehmer`
-> (
-> `meeting_id` int(11) NOT NULL,
-> `teilnehmer_id` int(11) NOT NULL
-> )
-> TYPE=INNODB
-> ;
Query OK, 0 rows affected (0.01 sec)
mysql>
mysql> ALTER TABLE `meeting_teilnehmer`
-> ADD CONSTRAINT `recipient_id`
-> FOREIGN KEY(`meeting_id`, `teilnehmer_id`)
-> REFERENCES `teilnehmer`(`id`, `id`);
ERROR 1005: Can't create table './teammeeting/#sql-a507e_2e.frm' (errno: 150)
mysql>
mysql> ALTER TABLE `meeting_teilnehmer`
-> ADD CONSTRAINT `meeting_id`
-> FOREIGN KEY(`meeting_id`, `teilnehmer_id`)
-> REFERENCES `meetings`(`id`, `id`);
ERROR 1005: Can't create table './teammeeting/#sql-a507e_2e.frm' (errno: 150)
mysql>
![]() |
|< 1 2 3 4 >| | ![]() |
35 Einträge, 4 Seiten |