Хорошо, конечно, продумывать и проверять структуру БД и запросы к ней. Позволяет избежать многих ошибок. Но чаще всего в жизни всего не предусмотришь и приходится что-то дорабатывать напильником по ходу разработки.
Научился: Добавлять в любых изменяющих запросах условие Трудности: Перемещение комнат вверх-вниз Хорошо, что есть возможность показать возникающие ошибки и их исправление