Ru-MaNGOS

Вернуться   Ru-MaNGOS > Дополнения > Tools

Важная информация

Tools Обсуждение программ для MaNGOS

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 17.12.2010, 10:27   #1
Sid
Ученый
 
Аватар для Sid
 
Регистрация: 02.04.2010
Сообщений: 237
Сказал(а) спасибо: 41
Поблагодарили 99 раз(а) в 44 сообщениях
Sid Скоро придёт к известностиSid Скоро придёт к известности
По умолчанию DataBase GUID sorter

Сразу прошу помидорами не кидаться Программиринг в стадии изучения
Давно еще хотел навести порядок в базе в таблицах связанных по ключевым полям GUID (например characters и от нее зависящие character_* или creature и creature_*) смысл понятен. Иногда, или даже постоянно если много работаешь с базой, появляются пробелы в гуидах и они приобретают колоссальные значения
Программка создает темповое поле в которое перезаписывает исходные GUID'ы в инкрементальном порядке от 1 и до значения которое выдаст запрос COUNT(*) Одновременно сопоставляя GUID'ы из указанных зависящих таблиц, так же создает темповое поле и записывает на него соответствующие новые GUID'ы. По окончании выполнения, удаляет из зависящих таблиц записи у которых темповое поле оказалось равным 0 (значит гуид не существует в исходной таблице) и заменяет старое guid поле на то что получилось в темповом.

Мда, не умею я красиво объяснять, но как есть

В итоге что пока умеет:
- Поддержка до 5 таблиц, однако можно в коде выставить больше кто желает.
- Поддержка 2 полей в PRI KEY.

Как работает:
1) Запускаем, вводим данные для соединения с базой (как правило нужен юзер с доступом на ALTER запрос.)
2) После соединения с бд вводим setvar и указываем переменные.
3) Вводим start и ждем (чем больше зависящих таблиц и записей тем дольше работает)

Скриншот результата:


Сейчас пока альфа тестовая версия консольная, позже сделаю на Qt4.

Исходники https://github.com/sidsukana/dbsorter
Релизный бинарник https://github.com/downloads/sidsuka...er_Release.zip

Спасибо за внимание

Последний раз редактировалось Sid; 17.12.2010 в 10:33.
Sid вне форума   Ответить с цитированием
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[10904] Cleanup character_battleground_data when deleting characters from database newsbot CMaNGOS Commits 0 21.12.2010 15:40
Альтернатива Zero Database smoota MaNGOSZero (1.12.X) 1 19.10.2010 22:46
[10100] Fixed some cases assign low guid to full guid update field. newsbot CMaNGOS Commits 0 23.06.2010 10:20
[9849] Implement character database clean up. newsbot CMaNGOS Commits 0 08.05.2010 00:20


Текущее время: 18:11. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot