![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 0 Dołączył: 11.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Jak sprawdzić w Javie czy dany rekord istnieje w bazie danych MYSQL.
nie chciałbym tego obsługiwać przez try catch
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 0 Dołączył: 11.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
preparedStatement.executeUpdate(); ta metoda zwraca ilość rekordów ale w przypadku Update
a jak uzyskać w ten sam efekt w przypadku SELECTA, ponieważ ta metoda nie zwraca int: preparedStatement.executeQuery() ? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Kod String query = "SELECT count(slowko_ang) as count_rows FROM Widok_user WHERE slowko_ang =cos '" preparedStatement = connection.prepareStatement(query); resultset = preparedStatement.executeQuery(); int numberOfRows = resultset.getInt("count_rows"); pomijając to, że zapytanie jest niepoprawne - warunek where. Jako pseudokod to tak Ten post edytował Turson 13.04.2015, 18:59:27 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 0 Dołączył: 11.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
nadal rzuca mi wyjątkiem jeżeli warunek po WHERE wskazuje na 0
resultset = preparedStatement.executeQuery(); rzuca mi wyjątkiem java.sql.SQLException: Illegal operation on empty result set. Pytanie jakiej metody użyć aby zwracała w takim wypadky 0? Ten post edytował gregi 13.04.2015, 20:45:17 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Używasz preparedStatement i ręcznie doklejasz zew. parametr? Skorzystaj z bindowania.
2. Dostajesz wyjątek bo próbujesz pobrać dane z pierwszego wiersza wyników, w momencie kiedy masz ich zero (sprawdź sobie co zwraca Ci ResultSet.next()). 3. Skorzystaj z zapytania @Tursona wykorzystującego COUNT(), które zawsze zwróci Ci dokładnie jeden wiersz. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.08.2025 - 03:00 |