Каков наилучший способ реализации контроля версий в базе данных MYSQL? - PullRequest
1 голос
/ 06 марта 2009

Мне нужно создать систему управления версиями для хранения нескольких версий моих статей в базе данных, чтобы пользователь мог выполнить откат при необходимости. Мои первые мысли, когда пользователь хочет отредактировать статью, на самом деле я получаю sql больше не обновлять, но вы вставляете их информацию обратно в базу данных. В настоящее время проблема заключается в том, что у меня есть таблица статей, и я использую идентификатор в качестве основного ключа для идентификации своей статьи (так что читайте больше ссылок и так далее). Если я вставлю в эту таблицу, у меня появятся принципиально новые статьи, так что я думаю, что мне нужна новая таблица для более старых статей, но тогда у меня возникнут проблемы с оригиналами в этой первой таблице выберите, например, если у них есть 3 правки, поэтому 3 статьи позволяют сделать все в отдельные дни 1, 2 и 3 мая, как мне нужно показать, что они выбрали версию 2 мая, а не последнюю версию 3 мая. Любая помощь будет очень благодарна,

Cool Hand Luke Uk

Ps. Я также использую PHP и статьи с метками времени: D.

Ответы [ 2 ]

8 голосов
/ 06 марта 2009

Есть 2 таблицы:

  • article: здесь вы храните article_id, название статьи и любые другие метаданные
  • article_version: здесь вы храните каждую версию статьи (включая оригинальную) и ссылаетесь на article_version.article_id = article.article_id. Обязательно добавьте метку времени, версию и т. Д. В эту таблицу.
0 голосов
/ 06 марта 2009

Если вы работаете с версиями текстовых статей, вам следует рассмотреть возможность использования вики, например MediaWiki . Возможно, они решили проблему для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...