![]() |
![]() |
-sepuku- |
![]()
Post
#1
|
Goście ![]() |
Chcialbym sie zapytac, ktory ze sposobow bedzie lepszy (bezpieczniejszy, wydajniejszy).
Skrypt przetwarzajacy potrzebuje informaji czy dany rekord jest w bazie (w tym czasie update), czy go jeszcze nie ma (insert), w takim razie przyszly mi 2 rozwiazania do glowy. W czasie budowania formularza, gdzie jest sporo pol, dodaje tez pola hidden z informacja czy byl rekord. W takim przypadku zlosliwi mogliby zmienic wartosci takich pol, skutkiem czego bylyby niepoprawnie dodane, uaktualnione dane w bazie. W drugim sposobie po prostu skrypt przetwarzajacy sprawdzalby czy istnieje w bazie rekord, minusem tego jest dodatkowe obciazenie bazy. Co w takim przypadku zrobic? |
|
|
![]() |
-sepuku- |
![]()
Post
#2
|
Goście ![]() |
Dzieki za naprowadzenie, REPLACE nie zabardzo spelnia moje wymagania, gdyz musialbym kompletowac wszystkie dane chcac updatowac jedno pole.
Po drodze poszukiwan znalazlem: INSERT INTO slownik (haslo, znaczenie) VALUES('house', 'dom (budynek), rodzaj obiektu mieszkalnego.') ON DUPLICATE KEY UPDATE znaczenie=VALUES(znaczenie); Oznacza to, ze jesli zapytanie trafi na taka sama wartosc w polu haslo, ktore jest kluczem podstawowym nastapi update. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 23:23 |