konto usunięte
Temat: Problem z automatycznym nadawaniem ID
Michał Wojtkowiak:
Problem polega na tym, że podczas jednoczesnego kliknięcia przez wielu użytkowników przycisku zatwierdź, nadawany, jest ten sam id rekordu. Nie można tego zrobić auto-incrementem, bo id składa się z cyfr, znaków i liter.
Część składająca się z cyfr nadawana jest za pomocą zapytania select max() from... . Reszta znaków w ID jest statyczna i nie ulega zmianie.
Zamiast bawic sie po stronie parsera, napisz funkcje na serwerze baz danych, ktora zadba o zablokowanie tabeli, zbudowanie ID, zaktualizowanie czego trzeba i zwroci nowe ID jako wynik.
Uniezalezniasz sie od zmian w kodzie + zyskujesz na szybkosci operacji (kod parsowany *zawsze* bedzie dzialal wolniej niz skompilowana funkcja w DB) + modyfikacja tabeli/bazy wymaga poprawy kodu w jednym miejscu (DB) zamiast wielu (PHP).
Tyle moje 2 grosze ;)Łukasz S. edytował(a) ten post dnia 19.02.08 o godzinie 13:30