· 8 years ago · Jun 07, 2018, 11:58 AM
1CREATE TABLE IF NOT EXISTS `testdb`.`person` (
2`id` INT(11) NOT NULL AUTO_INCREMENT,
3`firmenname` VARCHAR(255) NULL DEFAULT NULL,
4`nachname` VARCHAR(255) NULL DEFAULT NULL,
5`vorname` VARCHAR(255) NULL DEFAULT NULL,
6`person_zusatzinfo_id` INT(11) NULL,
7PRIMARY KEY (`id`),
8INDEX `fk_person_zusatzinfo1_idx` (`person_zusatzinfo_id` ASC),
9CONSTRAINT `fk_person_zusatzinfo1`
10FOREIGN KEY (`person_zusatzinfo_id`)
11REFERENCES `testdb`.`person_zusatzinfo` (`id`)
12
13CREATE TABLE IF NOT EXISTS `testdb`.`person_zusatzinfo` (
14`id` INT(11) NOT NULL AUTO_INCREMENT,
15`benutzername` VARCHAR(255) NULL DEFAULT NULL,
16PRIMARY KEY (`id`))
17
18CREATE DEFINER = CURRENT_USER TRIGGER `testdb`.`person_AFTER_INSERT` AFTER
19INSERT ON `person` FOR EACH ROW
20BEGIN
21INSERT INTO person_zusatzinfo(id) VALUES(NEW.id);
22UPDATE person SET person_zusatzinfo_id = NEW.id WHERE id = NEW.id;
23END
24
25INSERT INTO `testdb`.`person`(firmenname, nachname, vorname) VALUES('testfirma', 'Schmidt', 'Ralf');
26
27TABLE person
28+---+------------+----------+---------+----------------------+
29|id | firmenname | nachname | vorname | person_zusatzinfo_id |
30+---+------------+----------+---------+----------------------+
31|1 | testfirma | Schmidt | Ralf | null |
32+---+------------+----------+---------+----------------------+
33
34TABLE person_zusatzinfo
35+---+--------------+
36|id | benutzername |
37+---+--------------+
38|1 | null |
39+---+--------------+
40
41TABLE person
42+---+------------+----------+---------+----------------------+
43|id | firmenname | nachname | vorname | person_zusatzinfo_id |
44+---+------------+----------+---------+----------------------+
45|1 | testfirma | Schmidt | Ralf | 1 |
46+---+------------+----------+---------+----------------------+