Допустим, у меня есть база данных со следующими таблицами:
CREATE TABLE user (
user_id int NOT NULL AUTO_INCREMENT,
...
PRIMARY KEY (user_id)
);
CREATE TABLE action_x (
action_x_id int NOT NULL AUTO_INCREMENT,
...
not_the_same_columns_as_for_action_y,
user_id int,
PRIMARY KEY (action_x_id)
);
CREATE TABLE action_y (
action_y_id int NOT NULL AUTO_INCREMENT,
...
not_the_same_columns_as_for_action_x,
user_id int,
PRIMARY KEY (action_y_id)
);
Отношение: пользователь <= [1: M] => action_x и пользователь <= [1: M] => action_y.
Таблица 'user' содержит данные о пользователе (ах), такие как логин и пароль, например. Таблицы 'action_one' и 'action_two' содержат данные для двух различных действий. Действия настолько отличаются друг от друга, что их нужно разделить на две таблицы.
- Подводя итог, 1 пользователь может иметь 0 или
БОЛЬШЕ записей action_x и 0 или БОЛЬШЕ
action_y records.
Моя проблема в том, что я хотел бы реализовать (путем хранения соответствующих данных в базе данных) способ сообщить пользователю, какие действия он или она должны выполнять в определенном порядке.
- Например, user_id = 1 должен выполнить
action_x_id = 2, после этого
action_y_id = 1, затем action_x_id = 10,
и т. д.
Я использую MySQL в качестве источника базы данных с Hibernate 3.6.x и Java.
Есть ли какой-нибудь стандартный способ решения подобных проблем? Как бы вы решили проблему?
Спасибо за помощь и хорошего дня! =)