Статья стиля Википедии, как я должен разработать свою базу данных?

Я должен сделать статью, которая не может быть отредактирована, но она может быть сохранена как новая версия, и только новейшую версию показывают пользователям. Как я должен реализовать этот вид проектирования баз данных?

1
задан newbie 24 April 2010 в 08:39
поделиться

2 ответа

База данных может иметь номер версии или временную метку для каждой версии статьи, и вы просто обслуживаете самую последнюю статью (самый высокий номер версии или самую последнюю временную метку).

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

2
ответ дан 3 September 2019 в 01:03
поделиться

Есть несколько способов справиться с этим. Я думаю, что наиболее простой способ - это иметь таблицу «article» с любыми данными, высеченными в камне при создании статьи (например, id), и вторую таблицу с каждой отредактированной версией «articleVersion». article будет иметь отношение "один ко многим" с articleVersion.

Вы можете установить бит «currentVersion» и отключить его для старой версии и включить для новой версии. Вы также можете просто использовать datetime, dateCreated, чтобы получить самую новую версию, поскольку вы никогда не планируете их редактировать.

0
ответ дан 3 September 2019 в 01:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: