Отправка в базу данных - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Работа со скриптами

Работа со скриптами Помощь в редактировании и написании квестов к Java серверам, а так же эвентов.
Описание темы:Отправка в базу данных MySQL одинаковых запросов

Ответ
Опции темы
Непрочитано 22.09.2017, 00:42   #1
Аватар для Kassidy
Пользователь

Автор темы (Топик Стартер) Отправка в базу данных

Собрался сделать так, чтобы можно было брать один и тот же саб класс сколько угодно раз. Получилось так, что он берется бесконечно, так же отображается в окне смене сабкласса, но при перезаходе игры все повторяющиеся имеющиеся сабы исчезают. При взятии саба в гс ошибка:
Код:
WARNING: Could not add character sub class for jjj: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '268480662-3' for key 'PRIMARY'
.
268480662 - ид персонажа/объекта
3 - ид класса(ClassId(саб класса)), вроде Warlord
В итоге, нужно сделать так, чтобы при взятии одинакового саба не вылезало этой ошибки, соответственно, скорее всего, менять ид ClassID каким-то образом.
При добавлении в базу MySQL идет запрос для заполнения данных, вот полный код:
Код:
try (Connection con = L2DatabaseFactory.getInstance().getConnection())
			
			{
				PreparedStatement statement = con.prepareStatement(ADD_CHAR_SUBCLASS);
			
				statement.setInt(1, getObjectId());
				statement.setInt(2, newClass.getClassId());
				statement.setLong(3, newClass.getExp());
				statement.setInt(4, newClass.getSp())
				statement.setInt(5, newClass.getLevel());
				statement.setInt(6, newClass.getClassIndex()); // <-- Added
				statement.execute();
				statement.close();
			}
			catch (Exception e)
			{
				_log.warning("WARNING: Could not add character sub class for " + getName() + ": " + e);
				return true;
			}
В итоге, он ругается, как я понял, только из-за повторяющегося getClassID в базе. Кто поможет решить проблему?
Kassidy вне форума Ответить с цитированием
Непрочитано 28.09.2017, 21:04   #2
Аватар для Kassidy
Пользователь

Автор темы (Топик Стартер) Re: Отправка в базу данных

актуально
Kassidy вне форума Ответить с цитированием
Непрочитано 28.09.2017, 21:16   #3
Аватар для 4ipolino
Пользователь

По умолчанию Re: Отправка в базу данных

.......:
Свернуть ↑Развернуть ↓
4ipolino вне форума Отправить сообщение для 4ipolino с помощью ICQ Ответить с цитированием
Непрочитано 28.09.2017, 23:23   #4
Аватар для n3k0nation
Antihero

По умолчанию Re: Отправка в базу данных

Переделать таблицу, где сохраняются сабклассы, чтобы можно было одному персонажу брать одни и те же классы. А, да, еще переделать везде в коде работу с этой таблицей.
__________________
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
n3k0nation вне форума Ответить с цитированием
Непрочитано 06.12.2017, 21:20   #5
Аватар для Kassidy
Пользователь

Автор темы (Топик Стартер) Re: Отправка в базу данных

n3k0nation, можно подробнее, пожалуйста, откуда начинать переделывать таблицу?)
Kassidy вне форума Ответить с цитированием
Непрочитано 08.12.2017, 03:23   #6
Герой

По умолчанию Re: Отправка в базу данных

offtop:
Свернуть ↑Развернуть ↓
Anikey вне форума Ответить с цитированием
Непрочитано 08.12.2017, 10:41   #7
Аватар для MystX
Пользователь

По умолчанию Re: Отправка в базу данных

Добавь в табличку после class_id номер сабкласса, сделай его PK, Ну и при добавлении сабскласса чекай кол-во сабклассов на чаре и делай +1.
Ну это как вариант... А так решай, как тебе больше нравится
MystX вне форума Отправить сообщение для MystX с помощью ICQ Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

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

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как перенести базу данных aks19 Обучающие статьи 15 21.03.2014 22:21
Не могу залить базу данных realist Документация 4 19.09.2010 13:39
Как перенести базу данных на другой сервер Delakrua Lineage II 6 29.11.2009 11:24
не могу в лить в базу данных skil Работа со скриптами 4 25.10.2009 16:19


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 19:35. Часовой пояс GMT +3.

Вверх