Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > СУБД, общие вопросы > шахматы


Автор: QueerGod 10.4.2007, 09:34
нужно спроектировать базу данных для online шахмат, а именно для самой партии. Кто-нибудь сталкивался с такой задачей? Кто скажет какую стуктуру должны иметь таблицы? просто там куча ньюансов, не знаю, хранить ли только историю ходов или ещё и шахматную сетку, заполненную фигурами. Ещё надо будет хранить информацию о том, можно ли рокироваться (если ладья или король хоть раз двигались, то рокироваться нельзя), можно ли брать пешку с длинного хода (её можно взять только на следующем ходу), каким образом заменяется пешка на другую фигуру, когда доходит до противоположного конца доски. Если у вас есть мысли, поделитесь, плиз! Заранее благодарен.

Автор: LSD 10.4.2007, 11:08
Храни только историю, расстановку фигур ты по ней восстановишь в программе.
Можно ли рокироваться легко определить одним запросом, достаточно проверить что в списке ходов партии есть ходы, которые начинаются с клетки на которой стоит король, или ладья. А вот на что была заменена пешка, хранить действительно нужно.

Автор: SergeBS 11.4.2007, 09:45
QueerGod, 
Цитата
Ещё надо будет хранить информацию о том, можно ли рокироваться

Не надо. Дели задачу правильно:
1. Хранение данных о конкретных ходах - структура БД.
2. Возможные ходы - бизнес-логика.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)