Member 13575391 Ответов: 2

Подготовленная ошибка оператора .. Пожалуйста исправьте ошибки в этой программе


импорт java.sql.Connection;
импорт java.sql.DriverManager;
импорт Java.для SQL.Объект PreparedStatement;
импорт java.sql.ResultSet;
импорт java.sql.SQLException;
импорт java.sql.Statement;
импорт java.util.список ArrayList;
импорт java.util.HashMap;
импорт java.util.List;
импорт java.util.Map;

тест открытый класс {

частное статическое соединение getConnection() {
Соединение con = null;
пробовать {
Класс.forName("COM на.для MySQL.с JDBC.Драйвер");// .метод newinstance();

как Con = DriverManager.метод getconnection(
"jdbc:mysql://localhost:3306/login", "root", "john"); //////
} catch (ClassNotFoundException | SQLException e) {
// TODO автоматически генерируемый блок catch
е.печатные();
}
вернуть кон;
}

// матан
общественного недействительными вставить(имя строки, строки проход) { // mathan по
Кон соединение = тест.метод getconnection();
пробовать {
PreparedStatement ps = con.prepareStatement("вставить в newds значения(?,?)");

ps.setString(1, имя);
ps.setString(2, pass);

ПС.executeUpdate();

System.out.println("завершено");

} catch (SQLException e) {

е.печатные();
}
наконец{
пробовать {
кон.рядом();
} catch (SQLException e) {
// TODO автоматически генерируемый блок catch
е.печатные();
}
}

}

общественная список<карте&ЛТ;строку, строку&ГТ;&ГТ; функций getUser() {
Список<карте&ЛТ;строку, строку&ГТ;&ГТ; ли = новый ArrayList и Л;карте&ЛТ;строку, строку&ГТ;&ГТ;();
пробовать {

Connection con = getConnection();
PreparedStatement ps = con.prepareStatement("select * from newds");

Набор РС = ПС.метод executequery();
в то время как (rs.next()) {
// РС.для данного locale("Сида")
// rs.getString(2)

Хранилище HashMap и Л;строка, строка&ГТ; хм = новый HashMap и Л;строка, строка&ГТ;();
//hm.put("ключ", "valne");
hm.put("name", rs.getString(1));
hm.put("пароль", rs.getString(2));

ли.добавить(ТМ);
}
} catch (SQLException e) {
// TODO автоматически генерируемый блок catch
е.печатные();
}
возвращение ли;

}

общественная статический недействительным insertBatch() {
Connection con = getConnection();
пробовать {

PreparedStatement ps = con.prepareStatement("вставить в newds(?,?)");

for (int i = 3; i < 6; i++) {

ps.setString(1, "s1" + i);
ps.setString(2, "ad");
ПС.addBatch();
}

int[] i = ps.executeBatch();

for (int j = 0; j < i.length; j++) {

Системы.из.код println(я[Дж]);
}

System.out.println("cpcompleted");
} catch (SQLException e) {

е.печатные();
}

}

общественная статический недействительным insertTransaction() {
Connection con = getConnection();
пробовать {

con.setAutoCommit(false);

PreparedStatement ps = con.prepareStatement("вставить в newds(?,?,?)");
ps.setInt(2, 1);
ps.setString(2, "sar");
ps.setString(3, "admin");
int i = ps.executeUpdate();

PreparedStatement ps1 = con.prepareStatement("вставить в newds(?,?,?)");
ps1.setInt(3, 1);
ps1.setString(2, "s3");
ps1.setString(3, "ad");
инт Дж = пс1.executeUpdate();

кон.совершать();
System.out.println("завершено");
} catch (SQLException e) {
пробовать {
кон.откат();
} catch (SQLException e1) {
// TODO автоматически генерируемый блок catch
Е1.печатные();
}
е.печатные();
}

}
}
публичный статический пустота главный(строка[] аргументы) {

Испытания Т = новый тест();

Т.insertTransaction();
Т.вставить("С5", "объявление");
Список<карте&ЛТ;строку, строку&ГТ;&ГТ; справ = Т.функций getUser();

// Системы.из.код println(ссылка);

для (Map<String, String> map : ref) {

System.out.print(map.get("имя"));
Системы.из.печать(" ");
System.out.print(map.get("пароль"));
Системы.из.код println();

}
}
}

Что я уже пробовал:

Пожалуйста исправьте ошибки в вышеуказанной программе

2 Ответов

Рейтинг:
1

OriginalGriff

Цитата:
Пожалуйста исправьте ошибки в вышеуказанной программе
Нет.
А почему бы и нет?
Отчасти потому, что мы не знаем, что это такое: мы понятия не имеем, что этот код должен делать, что он делает, чего вы не ожидали, или не делает, что вы сделали.
Отчасти потому, что у нас нет доступа к вашим данным, поэтому мы понятия не имеем, как это выглядит.
Но в основном потому, что это твоя работа, а не наша.

Предполагая, что это компилируется - и мы не можем сказать это без совсем небольшого усилия - мы не можем запустить ваш код. Так что все будет зависеть от тебя.
К счастью, у вас есть инструмент, который поможет вам выяснить, что происходит: отладчик. Поместите точку останова в первую строку функции и запустите код через отладчик. Затем посмотрите на свой код и на свои данные и определите, что должно произойти вручную. Затем по одному шагу в каждой строке проверяйте, что то, что вы ожидали, произойдет именно так, как и произошло. Когда это не так, тогда у вас есть проблема, и вы можете вернуться назад (или запустить ее снова и посмотреть более внимательно), чтобы выяснить, почему.

Извините, но мы не можем сделать это за вас - пришло время вам освоить новый (и очень, очень полезный) навык: отладку!


Рейтинг:
0

Richard MacCutchan

SQL INSERT INTO оператор[^]