Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak uniknac dodania tych damych danych do bazy
Forum PHP.pl > Forum > Bazy danych > MySQL
mcfresh
Witam, powiedzmy mamy cos takiego:
id, imie, nazwisko

W jakis sposob mozemy sprawdzic czy dane te nie beda dublowane.

jednym slowem, nie chce aby dwukrotnie byly wpisywane te same dane.
(w tym przyp. imie i nazwisko)

Ewentualnie jakie zapytanie mi to sprawdzi?

Pozdrawiam, z gory dziekuje za pomoc
nospor
1) Zakladasz uniqa na te dwa pola i baza nie pozwoli ci na dodanie dwoch takich samych rekordow
2) albo sprawdzasz zwyklym selectem:
  1. SELECT * FROM tabela WHERE imie='imie' AND nazwisko='nazwisko'

jesli to ci zwroci rekord, znaczy ze juz masz takie dane w bazie
mhs
Utwórz klucz podstawowy np. numer pesel. Zawsze może być tak, że są dwie różne osoby mają to samo imię i nazwisko. Tutaj masz pole id które może być również kluczem podstawowym. Numer pesel jednak będzie kluczem naturalnym, a nie sztucznym jak w przypadku id. Jeżeli tak zrobisz wówczas będziesz miał na poziomie bazy danych zabezpieczenie przed tymi samymi rekordami.
mcfresh
Dziekuje za pomoc ale..

mozenie do konca precyzyjnie sie wyrazilem.

wydaje mi sie ze unique na na dwoch odpada gdyz:
bedzie

jan kowalski to jan nowak juz nie powstanie.

Imie i nazwisko oczywiscie jest przykladem, nie ma mozliwosli dodania np nr pesel.

Wyobrazalem sobie takie rozwiazanie:
1. pobieranie danych z formularza
2.sprawdzanie czy istnieja takie dane w bazie
- jezeli nie dodanie do bazy
- jesli tak wywolanie komunikatu

Jesli jest to mozliwe, prosilbym o fragment kodu, ktory mi to sprawdzi na glupim przykladzie Imienia i nazwiska

jeszcze raz Dzieki
nospor
Cytat
wydaje mi sie ze unique na na dwoch odpada gdyz:
bedzie

jan kowalski to jan nowak juz nie powstanie.

Nie zrozumiales: masz zalozyc jeden uniq na dwa pola, a nie dwa uniqi na kazde pole z osobna. Jest pewna "lekka" roznica.

Cytat
.sprawdzanie czy istnieja takie dane w bazie
podalem ci zapytanie co to sprawdza. teraz przydaloby sie troche wysilku z twojej strony
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.