Witam,
jestem początkująca w javie i mam napisać program czytający z wiersza poleceń dane podane przez użytkownika i używający ich w zapytaniach do bazy danych. Najpierw wywołuję funkcję tworzącą tabelę:
public static String stworzTab(Statement zapytanie) throws SQLException{
Scanner czytaj = new Scanner(System.in);
System.out.println("Podaj nazwe tabeli: ");
String nazwaTab = czytaj.next();
usunTab(nazwaTab,zapytanie);
zapytanie.execute("CREATE TABLE "+nazwaTab+" (NAZWISKO CHAR(20),PENSJA MONEY);");
czytaj.close();
System.out.println("Stworzono tabele "+nazwaTab+" o atrybutach NAZWISKO CHAR(20) i PENSJA MONEY");
return nazwaTab;
}
Tu podaję nazwę i zatwierdzam enterem, a potem wywołuję funkcję dodającą rekord do tej tabeli:
public static void dodajRekord(String nazwaTab,Statement zapytanie) throws SQLException{
Scanner czytaj = new Scanner(System.in);
System.out.println("Podaj nazwisko: ");
String nazwisko = czytaj.next();
System.out.println("Podaj pensje: ");
double pensja = czytaj.nextDouble();
zapytanie.execute("INSERT INTO "+nazwaTab+"(NAZWISKO,PENSJA) VALUES("+nazwisko+","+pensja+");");
System.out.println("Dodano rekord");
czytaj.close();
}
Ale po wypisaniu “Podaj nazwisko:” pojawia się błąd:
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
Nie mogę tego błędu ominąć w żaden sposób, dlatego bardzo proszę o pomoc. Z góry dzięki za poświęcenie czasu