Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP/MySQL] Formularz - wiele wpisow do bazy (INSERT) w jednym momencie
--ANdy--
post
Post #1





Goście







Witam

Zaczynam dopiero zabawe z PHP / MySQL i chcialbym zapytac, czy majac prosty formularz w php, ktory bezposrednio zapisuje dane z formularza do jednej tabeli (MySQL) i w jednym momencie kilku/wielu uzytkownikow wciskajacych 'Submit', moge oczekiwac ze tabela bedzie edytowana przez jeden z wpisow i pozostale zakoncza sie bledem?

Jak dziala MySQl w takich sytuacjach? Czy sa jakies sposoby na unikniecie przypadku blokowania tabeli gdy w jednej chwili wykonywanych jest wiele instrukcji INSERT?

Z gory dziekuje

Andy
Go to the top of the page
+Quote Post
nevt
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


o rozwiązywanie konfliktów martwi sie serwer bazy danych, w tabelach isam i innodb bez trazakcji obowiązuje zasada - kto pierwszy ten lepszy - jeżeli dane kolejnych wpsiów są poprawne - zostaną wszystkie obsłużone - jeżeli dane się powielą (przy update) - ostani wpis nadpisze poprzednie - jeżeli założone są restrykcje na klucze / indexy (przy insert) zapytania "spóźnione" po prostu się nie wykonają i zwrócą błąd w rodzaju "duplicated unique key / index entry..." w przypadku używania trazakcji jest to wszystko nieco bardziej skomplikowane, ale myślę, że na tym etapie nie jest ci to potrzebne...

jeżeli będziesz przestrzegał dwóch podstawowych zasad:
1. klucze podstawowe tabel typu autoinctrement, przy insert zamiast wartości tego pola podajemy null, przy update pomijamy to pole
2. sprawdzanie rezultatów każdego zapytania do bazy - czy powiodło się, czy zmiodyfikowało / dopisało jakieś rekordy

to o resztę nie musisz się martwić


--------------------

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 03:09