Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL] sprawdzenie wszystkich rekordow i ich aktualizacja
elmozaur
post
Post #1





Grupa: Zarejestrowani
Postów: 518
Pomógł: 18
Dołączył: 21.07.2008

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


Witajcie.
Mialem do zrealizowania nastepujace zadanie:

tabela MySQL miala nastepujaca strukture:
cat_id(int) - id kategorii,
cat_name(varchar50) - nazwa kategorii
cat_parent(int) - id kategorii nadrzednej, jesli 0 to kategoria glowna
cat_position(int) - jesli jest kilka kategorii to ta kolumna mowi o pozycji
cat_dir(int) - 0 oznacza ze w tej kategorii nie ma innych kategorii, 1 oznacza ze w tej kategorii sa inne kategorie.
Z innej bazy danych ajaxem importowalem dane do powyzszej tabeli a do kolumny cat_dir wpisywane bylo zero.
Teraz nalezalo jedynie zaktualizowac kolumne cat_dir aby bylo wiadomo czy kategoria zawiera inne kategorie.

Zrobilem to tak:
SELECT cat_id, cat_parent FROM kategorie
$id=$wiersz['cat_id']
SELECT cat_id FROM kategorie WHERE cat_parent='$id'
$liczba=mysql_num_rows($result)

if($liczba>0 || cat_parent==0)
UPDATE kategorie SET cat_dir=1

To rozwiazanie dziala ale jest koszmarnie wolne. Wykonanie tego kartezjanu trwa kilka minut (okolo 50 000 rekordow w bazie).
Zastanawiam sie czy jest jakis szybszy sposob na wykonanie tego zadania?

pozdrawiam
Grzegorz
Go to the top of the page
+Quote Post

Posty w temacie


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: 21.08.2025 - 05:51