Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Insert_id
sky993
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 21.07.2011

Ostrzeżenie: (0%)
-----


Witajcie.
Mam male pytanie. Otoz mam dwie tabele powiazane ze soba polem klientid. W jednej tabeli przechowuje login,haslo oraz klientid(auto_increment) a w drugiej dane dotyczace imienia, nazwiska, telefonu itp.
Chcac wprowadzac dane do obydwu tabel musze zachowac to samo id.
I tutaj, czy lepiej :
-pobierac ostatnie id za pomoca insert_id;
- czy za pomoca selecta i warunku,

Co by sie stalo gdyby dwie osoby zakladaly konto w podobnym czasie(w przypadku insert_id)?
Moglo by dojsc do tego, ze pola kientid sie pomieszaja?
Go to the top of the page
+Quote Post
basstone
post
Post #2





Grupa: Zarejestrowani
Postów: 40
Pomógł: 6
Dołączył: 20.12.2011

Ostrzeżenie: (0%)
-----


A nie lepiej trzymać te wszystkie dane w jednej tablicy?
Go to the top of the page
+Quote Post
sky993
post
Post #3





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 21.07.2011

Ostrzeżenie: (0%)
-----


To jest tylko przyklad wymyslony na poczekaniu.
Go to the top of the page
+Quote Post
mortus
post
Post #4





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


Bywa, że stworzenie takich dwóch tabel staje się koniecznością. A jeśli chodzi o sam problem, to nic nie stoi na przeszkodzie, aby używać funkcji mysql_insert_id(), w końcu po to została napisana.

Prawdopodobieństwo tego, że przy równoczesnym zakładaniu dwóch kont "pomieszają" się dane jest znikome, ale istnieje. Bez wątpienia wpływ na to może mieć obciążenie serwera baz danych. Zawsze możesz skorzystać z transakcji i możliwości blokowania tabel, ale wtedy trzeba pamiętać o konieczności zaimplementowania odpowiedniej obsługi błędów, choć z kolei prawdopodobieństwo pojawienia się takiego błędu (tzn. informującego, że ktoś w tej chwili korzysta z odpowiedniej tabeli i jest ona tymczasowo zablokowana do zapisu) również będzie znikome. W końcu nie są to jakieś skomplikowane obliczenia, w których zdecydowany udział ma silnik bazy danych, i które mogły by trwać dłuższą chwilę.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.12.2025 - 12:32