У меня возникли небольшие проблемы с пониманием того, как обрабатывать конец базы данных программы, которую я делаю. Я использую ORM в Кохане, но надеюсь, что общее понимание того, как решить эту проблему, приведет меня к ответу с ORM.
Я пишу программу для пользователей, которая будет управлять информацией о своих исследованиях. Мои таблицы в основном такие:
CREATE TABLE tags(
id INT AUTO_INCREMENT NOT NULL PRIMARY KEY,
tags VARCHAR(30),
UNIQUE(tags)
)
ENGINE=INNODB DEFAULT CHARSET=utf8;
CREATE TABLE stock_tags(
id INT AUTO_INCREMENT NOT NULL PRIMARY KEY,
tag_id INT NOT NULL,
stock_id INT NOT NULL,
FOREIGN KEY (tag_id) REFERENCES tags(id),
FOREIGN KEY(stock_id) REFERENCES stocks(id) ON DELETE CASCADE
)
ENGINE=INNODB DEFAULT CHARSET=utf8;
CREATE TABLE notes(
id INT AUTO_INCREMENT NOT NULL,
stock_id INT NOT NULL,
notes TEXT NOT NULL,
FOREIGN KEY (stock_id) REFERENCES stocks(id) ON DELETE CASCADE,
PRIMARY KEY(id)
)
ENGINE=INNODB DEFAULT CHARSET=utf8;
CREATE TABLE links(
id INT AUTO_INCREMENT NOT NULL,
stock_id INT NOT NULL,
links VARCHAR(2083) NOT NULL,
FOREIGN KEY (stock_id) REFERENCES stocks(id) ON DELETE CASCADE,
PRIMARY KEY(id)
)
ENGINE=INNODB DEFAULT CHARSET=utf8;
Как получить все атрибуты одной акции, включая ее ссылки, заметки и теги? Нужно ли добавлять ссылки, заметки и столбцы тегов в таблицу акций, а затем, как вы это называете? Я знаю, что использование ORM отличается, и я предполагаю, что могу использовать таблицы соединений в SQL.
Спасибо за любую помощь, это действительно поможет мне лучше понять проблему.