CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `login` varchar(25) NOT NULL, `password` char(40) NOT NULL, `email` varchar(255) NOT NULL, `registered` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), UNIQUE KEY `login` (`login`) ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8; -- user_id to tutaj wysyłający a mb_id to skrzynka do której ma wiadomość dotrzeć CREATE TABLE `message` ( `id` int(11) NOT NULL AUTO_INCREMENT, `mb_id` int(11) NOT NULL, `user_id` int(11) NOT NULL, `message_topic` varchar(255) NOT NULL, `content` text NOT NULL, PRIMARY KEY (`id`), KEY `mb_id` (`mb_id`), KEY `user_id` (`user_id`), CONSTRAINT `mb_id` FOREIGN KEY (`mb_id`) REFERENCES `message_box` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `user_idm` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- ---------------------------- -- ---------------------------- CREATE TABLE `message_box` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` int(11) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `user_id` (`user_id`), CONSTRAINT `user_id_mb` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Jakie ułożyć zapytanie aby tworząc użytkownik od razu tworzyłaby się skrzynka na wiadomości dla niego, czy trzeba to jakoś rozbić na dwa zapytania?