Показать сообщение отдельно

  #6  
Старый 17.02.2017, 23:14
Enmity
Познавший АНТИЧАТ
Регистрация: 22.09.2015
Сообщений: 1,710
С нами: 5599885

Репутация: 0


По умолчанию

Цитата:
Сообщение от parrx  

Спасибо за хороший пинок) сейчас попробую по этому примеру)

например

Код:


Код:
//есть
string one = "111111"; //(значение берется из базы)
//потом условие какое либо
if(земля == планета){
     one = "222222"; // данные изменяются в бд
}
if(земля == луна){
     one = "333333"; тоже обновляется значение
}
З.Ы. Ваш пример я распечатаю и в рамочку поставлю))))
т.е как я понимаю тебе надо, если в рандом_название_метода срабатывает какое-то условие, вкорячивать это дело в базу?

получаешь от DatabaseFactory если он есть \ делаешь коннект к базе если его нет, делаешь statement с INSERT'ом.

алгоритм тот же, код не особо разнится.

Код:


Код:
%%%% всё тот же говнокод шо и сверху%
PreparedStatement statement = connection.prepareStatement("SELECT * FROM bbs_buffer WHERE player_id=?;"); ->>>>>

PreparedStatement statement = connection.prepareStatement("INSERT INTO sometable VALUES(someshit) ;");
если по идентификатору, к примеру таблица у нас имеет столбы id, value и называется govnokod ->

Код:


Код:
PreparedStatement statement = connection.prepareStatement("INSERT INTO govnokod VALUES(id, YOUR_STRING_HERE_MYFRENDE) WHERE id=? ;");
если с кодом заталкивания в этот стейтмент всякого мусора:

Код:


Код:
PreparedStatement statement = connection.prepareStatement("INSERT INTO govnokod VALUES(?, ?) WHERE id=? ;");
statement.setInt(1, TVOY_KLASSNIY_ID);
statement.setInt(2, TVOY_KLASSNIY_STRING);
statement.setInt(3, TVOY_KLASSNIY_ID);
ResultSet resultSet = statement.executeQuery();
[S]и дальше по аналогии работаешь с данными стейтмента.[/S] я забыл шо у нас тут инсерт, шо с ним делать ещё надо.

чтоб вынести в отдельный метод апдейт этой строки (на самом деле в твоём случае не обязательно, но если хочешь красивостей, то пишешь метод вроде такого):

Код:


Код:
// public - если в отдельном классе валяется, так можешь спокойно костылить private
public static void davaiVkoryachimGovnokod(int someUnfuckableId, String someUnfuckableShietdata){
%%%% тут какой-то говнокод про то как ты к базе пути ищешь %%%%
PreparedStatement statement = connection.prepareStatement("INSERT INTO govnokod VALUES(?, ?) WHERE id=? ;");
statement.setInt(1, someUnfuckableId);
statement.setInt(2, someUnfuckableShietdata);
statement.setInt(3, someUnfuckableId);
ResultSet resultSet = statement.executeQuery();
//название в зависимости от коннекта
connection.close(); // никогда не забывай закрывать поток
}
и просто при срабатывании чего-то тупо вызываешь метод, передавая в него id и String с мусором.

Цитата:
Сообщение от parrx  

Код:


Код:
//есть
string one = "111111"; //(значение берется из базы)
//потом условие какое либо
if(земля == планета){
     one = "222222"; // данные изменяются в бд
}
if(земля == луна){
     one = "333333"; тоже обновляется значение
}
а, да, забыл совсем. вот тебе смесь твоего и моего говнокода

Код:


Код:
String one = "";
// код у истинного говнокодера должен иметь ид такое же классное, как и сам говнокодер. вкорячим сюда 228 лулза ради.
if(код == говно){
     one = "222222";
     davaiVkoryachimGovnokod(228, one);
}
if(земля == луна){
     System.out.println("если я выполнился, значит мир сошёл с ума"); // этого достаточно в этом условии
}
 
Ответить с цитированием