Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Проблема с кодом
#11
попробуй так SELECT * FROM character_mail WHERE char_name= ? ....
Ответ
#12
нету введения переменой _activeChar во втором методе Оо не проще объединить 2 метода в один=)?!
Ответ
#13
Вместо того, что бы пальцы гнуть, лучше бы на код внимательно посмотрели.

В SQL строковые переменных необходимо обрамлять одинарными кавычками.
Так:
Код:
String query = "SELECT * FROM character_mail WHERE recipient = '"+ _activeChar.getName() + "' ORDER BY author ASC";

Добавлено через 1 минуту
А самый лучший вариант, как и сказал BlackSmith: использовать конструктор, который сам генерирует часть кода, а ты через функции подставляешь свои значения.
Классический Interlude PvP сервер http://akamanah.ru/
Ответ
#14
спс всем, все красавцы, все мучают, всунуть в String переменные для запроса, дурной вопрос а зачем тогда "PreparedStatement"?a
pacifica Написал:Пол дня уже бьюсь над одним куском, не работает и всё тут
[src=#java]
public Mail(L2PcInstance character)
{
_activeChar = character;
}

public Mail()
{
if (_activeChar == null)
return;
Connection con = null;
try
{
con = L2DatabaseFactory.getInstance().getConnection();
String query = "SELECT * FROM character_mail WHERE recipient="+ _activeChar.getName() +" ORDER BY author ASC";
PreparedStatement statement = con.prepareStatement(query);
ResultSet rset = statement.executeQuery();
while (rset.next())
[/src]
Одно НО - это то, что проблема находится тут
Код:
SELECT * FROM character_mail WHERE recipient="+ _activeChar.getName() +" ORDER BY author ASC

В этом уверен на 100%. Может есть какой-нибудь другой реальный способ селекции из базы по Имени (char_name) или Номеру Объекта (obj_id)?
P.S.: Для особо одарённых, вылетает ошибка NullPointerException
[src=#java]
public Mail(L2PcInstance character)
{
_activeChar = character;
}

public Mail()
{
if (_activeChar == null)
return;
Connection con = null;
try
{
con = L2DatabaseFactory.getInstance().getConnection();
PreparedStatement statement = con.prepareStatement("SELECT * FROM character_mail WHERE recipient=? ORDER BY author ASC");
statement.setString(1, _activeChar.getName());
ResultSet rset = statement.executeQuery();
while (rset.next())
[/src]
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Lineage 2 PTS 287 Protocol Проблема PSIFAK 1 1,381 01-25-2023, 04:08 AM
Последний пост: Phantom-Dev
  Myext64HF проблема с сетью MystX 3 1,680 11-08-2022, 04:33 AM
Последний пост: Phantom-Dev
  Проблема с rguard\ftguard iDarkEmpire 13 5,869 07-22-2020, 11:31 PM
Последний пост: CTAJIIH
  Проблема с количеством ХП AerisRD 0 1,149 05-19-2020, 08:20 PM
Последний пост: AerisRD
  Проблема с запуском HF5 Shady 6 1,916 04-20-2020, 12:09 PM
Последний пост: Rork
  Проблема с откатами банок Amidamaru 14 3,206 04-04-2020, 05:52 PM
Последний пост: Blackone
  L2 PTS Проблема Reika 3 1,576 02-26-2020, 04:43 PM
Последний пост: Reika
  Проблема с купле-продажей на всех сборках Mor9k400 0 1,108 08-25-2018, 08:10 PM
Последний пост: Mor9k400
  Проблема с входом Windows 10 Alekseu28 1 1,545 03-13-2018, 09:34 AM
Последний пост: malum
  Проблема с св 13 Zelden 4 1,652 01-03-2018, 09:30 AM
Последний пост: ..Kirito..

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)