- Баллы
- 76
- Имя в Minecraft
- Solomka
При сохранении количества вопросов выдает ошибку:
Когда захожу в систему хелпером он нормально все сохраняет ;/
Использование в классе:
База данных:
Когда захожу в систему хелпером он нормально все сохраняет ;/
Код:
[14:21:41 WARN]: org.sqlite.SQLiteException: [SQLITE_ERROR] SQL error or missing database (unrecognized token: "'1af87e5f-3ef2-31a4-8b8a-4cd0628bb8ae''")
[14:21:41 WARN]: at org.sqlite.core.DB.newSQLException(DB.java:909)
[14:21:41 WARN]: at org.sqlite.core.DB.newSQLException(DB.java:921)
[14:21:41 WARN]: at org.sqlite.core.DB.throwex(DB.java:886)
[14:21:41 WARN]: at org.sqlite.core.NativeDB.prepare_utf8(Native Method)
[14:21:41 WARN]: at org.sqlite.core.NativeDB.prepare(NativeDB.java:127)
[14:21:41 WARN]: at org.sqlite.core.DB.prepare(DB.java:227)
[14:21:41 WARN]: at org.sqlite.jdbc3.JDBC3Statement.executeQuery(JDBC3Statement.java:81)
[14:21:41 WARN]: at ru.solomka.database.MySQLDataBase.saveQuestion(MySQLDataBase.java:153)
[14:21:41 WARN]: at ru.solomka.commands.handler.QuestionSendHandler$Send.lambda$new$0(QuestionSendHandler.java:141)
[14:21:41 WARN]: at ru.solomka.commands.handler.QuestionSendHandler$Send$$Lambda$11/922419138.execute(Unknown Source)
[14:21:41 WARN]: at ru.solomka.OptionalCommand.basic.BasicCommand.use(BasicCommand.java:33)
[14:21:41 WARN]: at ru.solomka.OptionalCommand.basic.BasicCommandHandler.onCommand(BasicCommandHandler.java:47)
[14:21:41 WARN]: at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
[14:21:41 WARN]: at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141)
[14:21:41 WARN]: at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:648)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.PlayerConnection.handleCommand(PlayerConnection.java:1399)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.PlayerConnection.a(PlayerConnection.java:1234)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:45)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:1)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.PlayerConnectionUtils$1.run(SourceFile:13)
[14:21:41 WARN]: at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
[14:21:41 WARN]: at java.util.concurrent.FutureTask.run(Unknown Source)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.SystemUtils.a(SourceFile:46)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:748)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:406)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679)
[14:21:41 WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577)
[14:21:41 WARN]: at java.lang.Thread.run(Unknown Source)
Использование в классе:
Код:
Player p = (Player) sender;
UUID sender_uuid = p.getUniqueId();
if (sender.hasPermission(getPermission()) || sender.isOp()) {
if (!map.contains(sender_uuid)) {
map.add(sender_uuid);
}
if (map.contains(sender_uuid)) {
if (join.isEmpty()) {
send(sender, translateAlternateColorCodes('&', getString("NoHelpers")));
return;
}
if(haveBan.containsKey(sender_uuid)){
map.remove(sender_uuid);
send(sender, translateAlternateColorCodes('&', "&c&l[ERROR] &fВы в &cвременном бане&f! &fЕсли вы не согласны c &cбаном&f - напишите &cжалобу&f!"));
return;
}
if (!haveQuestion.containsKey(sender_uuid)) {
MySQL.saveQuestion(MySQL.getQuestion(sender_uuid) + 1, sender_uuid);
for (UUID uuid : join) {
Bukkit.getPlayer(uuid).sendMessage(translateAlternateColorCodes('&', "&6[НОВЫЙ ВОПРОС] &fВопрос: &c" + sb.toString() + "&8&l‖ &fИгрок: &9" + sender.getName()));
haveQuestion.put(sender_uuid, true);
}
send(sender, translateAlternateColorCodes('&', getString("WaitAnswer")));
return;
}
if(map.contains(sender_uuid)) {
if (haveQuestion.containsKey(sender_uuid)) {
send(sender, translateAlternateColorCodes('&', getString("HaveQuestion")));
return;
}
}
return;
}
}
send(sender, translateAlternateColorCodes('&', getString("NotHavePermission")));
};
База данных:
Код:
public static void saveDat(List<Data> log) {
try {
Connection c = getConnection();
Statement statement = c.createStatement();
for (Data dat : log) {
statement.executeUpdate(String.format("INSERT player_data ('UUID', 'numAnswer', 'numQuestion', 'numJoin', 'numBan') VALUES (%d, '%s', '%s', '%s', '%s', '%s');",
dat.getId(), dat.getAnswer(), dat.getQuestion(), dat.getJoin(), dat.getBan()));
}
statement.close();
c.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static int saveJoin(int join, UUID id) {
try {
Connection c = getConnection();
Statement statement = c.createStatement();
ResultSet resultSet = statement.executeQuery(String.format("SELECT 'numJoin', 'UUID' FROM player_data WHERE numJoin ='%s' and UUID ='%s''", id, join));
while (resultSet.next()){
join(resultSet.getInt("numJoin"));
uuid((UUID) resultSet.getObject("UUID"));
}
statement.close();
c.close();
} catch (Exception e){
e.printStackTrace();
}
return join;
}
public static int saveAnswer(int answer, UUID id) {
try {
Connection c = getConnection();
Statement statement = c.createStatement();
ResultSet resultSet = statement.executeQuery(String.format("SELECT 'numAnswer', 'UUID' FROM player_data WHERE numAnswer ='%s' and UUID ='%s''", answer, id));
while (resultSet.next()){
answer(resultSet.getInt("numAnswer"));
uuid((UUID) resultSet.getObject("UUID"));
}
statement.close();
c.close();
} catch (Exception e){
e.printStackTrace();
}
return answer;
}
public static int saveBan(int ban, UUID id) {
try {
Connection c = getConnection();
Statement statement = c.createStatement();
ResultSet resultSet = statement.executeQuery(String.format("SELECT 'numBan', 'UUID' FROM player_data WHERE numBan ='%s' and UUID ='%s''", ban, id));
while (resultSet.next()){
ban(resultSet.getInt("numBan"));
uuid((UUID) resultSet.getObject("UUID"));
}
statement.close();
c.close();
} catch (Exception e){
e.printStackTrace();
}
return ban;
}
public static int saveQuestion(int question, UUID id) {
try {
Connection c = getConnection();
Statement statement = c.createStatement();
ResultSet resultSet = statement.executeQuery(String.format("SELECT 'numQuestion', 'UUID' FROM player_data WHERE numQuestion ='%s' and UUID ='%s''", question, id));
while (resultSet.next()){
question(resultSet.getInt("numQuestion"));
uuid((UUID) resultSet.getObject("UUID"));
}
statement.close();
c.close();
} catch (Exception e){
e.printStackTrace();
}
return question;
}
public static int getJoin(UUID id){
int i = 0;
try {
Connection c = getConnection();
Statement statement = c.createStatement();
i = statement.executeUpdate(String.format("SELECT 'numJoin', 'UUID' FROM player_data WHERE numJoin ='%s' and UUID ='%s'", id));
statement.close();
c.close();
} catch (Exception e) {
e.printStackTrace();
}
return i;
}
public static int getAnswer(UUID id){
int i = 0;
try {
Connection c = getConnection();
Statement statement = c.createStatement();
i = statement.executeUpdate(String.format("SELECT 'numAnswer', 'UUID' FROM player_data WHERE numAnswer ='%s' and UUID ='%s'", id));
statement.close();
c.close();
} catch (Exception e) {
e.printStackTrace();
}
return i;
}
public static int getQuestion(UUID id){
int i = 0;
try {
Connection c = getConnection();
Statement statement = c.createStatement();
i = statement.executeUpdate(String.format("SELECT 'numQuestion', 'UUID' FROM player_data WHERE numQuestion ='%s' and UUID ='%s'", id));
statement.close();
c.close();
} catch (Exception e) {
e.printStackTrace();
}
return i;
}
public static int getBan(UUID id) {
int i = 0;
try {
Connection c = getConnection();
Statement statement = c.createStatement();
i = statement.executeUpdate(String.format("SELECT 'numQuestion', 'UUID' FROM player_data WHERE numQuestion ='%s' and UUID ='%s'", id));
statement.close();
c.close();
} catch (Exception e) {
e.printStackTrace();
}
return i;
}
