![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 11.02.2011 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
Witam,
zastanawiałem się nad następującym problemem: Mam tabele z PK typu tekstowego. Wstawiając rekord o kluczu który już istnieje w bazie rekord nie jest dodawany. Specyfika aplikacji jest taka, że operacja wstawiania istniejącego już rekordu(te same dane) zdarza się od czasu do czasu. Czy lepiej(patrząc pod względem optymalnego rozwiązania): - wstawiać jak leci, najwyżej baza zwróci błąd i rekord nie zostanie dodany czy - sprawdzać istnienie rekordu i ewentualnie nie wstawiać Dodam, że tabela ma kilkaset tysięcy rekordów. I jak by to wyglądało gdyby dany problem rozważyć na kluczach typu int. Dzięki, Pozdrawiam |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 12 Dołączył: 31.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Nie wstawiaj jak leci tylko sprawdz czy dany rekord już istnieje.
Lepiej samemu obsłużyć dany błąd niż żeby wywaliło ci błąd z bazy danych. W ten sposób nie będziesz zwiększał logu bazy danych, a i wygenerowany błąd/komunikat będzie wyglądał przyjaźniej dla użytkownika. Powtórzony klucz łapiesz zapytaniem:
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 09:14 |