Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: cachowanie zapytan sql
Forum PHP.pl > Forum > PHP
acztery
witam korzystam z cachowanie zapytan ze strony webcity.pl

i wszystko spoko wiem jak zrobic działa pięknie. Ale

np

jeżeli mam takie 2 rozne zapytania generowane na podstawie jezyka,sortowania,userow, kategori i wieli innych klauzl

SELECT * FROM cats WHERE id=1 ...

i

SELECT * FROM cats WHERE id=2 .....


wynik kazdego zapytania sie zapisze do katalogu z cachem np tak md5($SQL)

ale jezeli cos dodam do tabeli cats to cach dla danego zapytania powinnien sie usunac i zostac stworzony nowy. ( aktualny ) ale jak rozpoznac jaki ma sie usuwac moze zle mysle. moze ktos mi nakresli czy tak powiino byc?
andrzejb
moze odbiegne od tematu ale zastanawiam sie po co keszowac zapytania skoro mysql ma wbudowane w siebie takie algorytmy.
FiDO
Cytat(acztery @ 2006-03-01 18:29:45)
ale jezeli cos dodam do tabeli cats to cach dla danego zapytania powinnien sie usunac i zostac stworzony nowy. ( aktualny ) ale jak rozpoznac jaki ma sie usuwac moze zle mysle. moze ktos mi nakresli czy tak powiino byc?

Mozna do nazwy pliku z cachem dodawac jakis prefix.. ja tak robie. Wtedy wszystkie zapytania pobierajace to samo tylko z innymi parametrami maja wspolny prefix w nazwie i juz mozna je latwo usunac.

@andrzejb: samo polaczenie z baza tez zajmuje troche czasu. Cachowanie zapytan ma sens i to calkiem spory.. nierzadko mozna zejsc z czasem wykonania o jedno miejsce po przecinku albo i wiecej jesli cachowane zapytania sa skomplikowane i ich wykonanie troche trwa. A wczytanie zserializowanej tabeli z gotowymi wynikami bedzie znacznie szybsze niz pobranie tego z bazy.
acztery
mam taki kod ale nie zwraca komunikatow i nic nie robi. wie moze ktos czemu?

  1. <?php
  2.  
  3. $SQL="SELECT Count(CatID) FROM cats WHERE ParentID='{$_GET['CAT']}'";
  4.  $sql->sql_query($SQL);
  5.  list($Count)=$sql->sql_fetch_row();
  6.  
  7.  
  8.  
  9. $SQL="SELECT ParentID,CatAdult,imgrek FROM cats WHERE CatID='{$_GET['CAT']}'";
  10. $RES=$sql->sql_query($SQL); 
  11. list($ParentID,$CatAdult,$imgrek)=$sql->sql_fetch_array();
  12. ?>


korzystam z funckji ktora jest na webcity? wie moze ktos czemu to nie dziala
nospor
Cytat
mam taki kod ale nie zwraca komunikatow i nic nie robi
Kod ten nie ma zadnego echo, to i nic nie widzisz na ekranie. A czy nic nie robic to skąd wiesz, skoro nie masz zadnego echo?

Cytat
korzystam z funckji ktora jest na webcity?
Ty nasz sie oto pytasz, czy jest to stwierdzenie? winksmiley.jpg
Super, ale chyba nie myslisz że bedziemy teraz wertowac webcity w poszukiwaniu jakiejś funkcji, z ktorej ty korzystasz. Nie myslisz ze dobrze by bylo bys nam podal bezposredniego linka do niej?
acztery
to tylko czesc kodu .. http://webcity.pl/webcity/artykuly.php/t/51 echo sprawdzalem ten nic nie zwraca
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.