Siemka potrzebuję pomocy. Mam program w javafx hibernate i polega on tam na dodawaniu samochodów do bazy danych itd itd. I podczas dodawania samochodu mam textField "Numer Rejestracyjny" i mam w tabeli kolumnę "Numer Rejestracyjny". I chcę zrobić coś takiego że jeżeli ktoś dodając samochód wpisze w textField numer rejestracyjny który jest już w bazie to żeby wyskoczył komunikat np "Nie możesz dodać samochodu ponieważ taki numer rejestracyjny już istnieje w bazie". Mam wizję żeby zrobić to w if tak samo jak robiłem sprawdzanie czy textFieldy nie są puste i czy np w cenie ktoś nie wpisał liter. Zastanawiałem się czy by nie stworzyć funkcji boolean która by sprawdzała mi w bazie danych czy istnieje taki obiekt już przy pomocy polecenia LIKE i jeżeli istnieje to przyjmuje wartość true a jeśli nie to wartość false i potem w if dać że if(funkcjaboolean!=true) to wykonuje to co ma zrobić else(wyswietla informacje ze istnieje taki samochód). Tylko nie wiem jak sie za to zabrać
- Rejestracja:ponad 11 lat
- Ostatnio:prawie 3 lata
- Postów:540
Zrób tak, że ściągasz z bazy selectem wszystkie nr rej.
I sprawdzasz czy wpisywany istnieje w źródle danych w jakim zapisujesz to dajesz błąd i tyle
$zapytanie = "SELECT id FROM samochody WHERE rejestracja = ?" ;
coś takiego do sql


- Rejestracja:ponad 6 lat
- Ostatnio:prawie 3 lata
- Postów:66
Możesz w procedurze zapisującej obiekt to sprawdzić za pomocą dodatkowego zapytania do bazy.
Jeżeli jest duplikat, to procedura zapisująca zgłasza wyjątek (Exception).
Następnie na GUI wyświetlasz komunikat w zależności od tego, czy wyjątek wystąpił, czy nie.

- Rejestracja:ponad 6 lat
- Ostatnio:prawie 3 lata
- Postów:66
Skoro umiesz zapisać obiekt w bazie przy pomocy Hibernate, to zapewne umiesz też zrobić zapytanie o obiekt spełniający pewne warunki. Jeżeli nie, to polecam lekturę:
https://docs.jboss.org/hibernate/orm/3.3/reference/en/html/querycriteria.html
To, czy będziesz sprawdzał przy zapisie, czy przy zmianie wartości w polu, to zależy od Ciebie. Z tego co doczytałem, masz już walidację pól -- wystarczy dodać kolejną, która będzie się komunikowała z bazą danych.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.