![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 28.07.2007 Ostrzeżenie: (0%)
|
Witam
Mam problem z długością wykonywania zapytania do bazy. Wszystko pięknie działało jeszcze jak miałem gdzieś około 420 rekordów. Po zwiększeniu bazy do 520 rekordów po prostu nie wyrabia i wynikiem jest pusta strona.
Nie wiem czy to jest spowodowane powolnym Framem czy też ja jakoś źle pobieram te dane ? Ma może ktoś jakiś pomysł ? Prosił bym o pomoc. |
|
|
|
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%)
|
Ogólnie wyszukiwanie po % nie należy do najszybszych (jeżeli da rade zrezygnuj z tego) i wydajniejszych rzeczy.
Może pomógłby indeks na SLO_haslo o raz COUNT(klucz_glowny_tabeli). |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 28.07.2007 Ostrzeżenie: (0%)
|
Niestety żądnej różnicy. Nawet po usunięciu całego WHERE. Jest to dla mnie strasznie dziwne bo 510 rekordów to nie jest wielka liczba :|.
|
|
|
|
Post
#4
|
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk |
A próbowałeś to zapytanie zapodać ręcznie w phpmyadmin? Zobacz wtedy prędkość.
|
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 28.07.2007 Ostrzeżenie: (0%)
|
Testowałem już to w phpMyAdmin i wszystko grało dlatego mój typ padł na klasę Zend_Db. Jednak właśnie doszedłem do tego że myliłem się. Wszystko się rozbiło w widoku. Przy obróbce danych. Wyświetlam hasło oraz klika pierwszych słów z opisu. Oczywiście nie chciałem żeby mu ucinało w połowie słowa wiec dopisałem mały upgrade. Właśnie zastanawia mnie fakt dlaczego to tak się rozbija gdyż mam zrobione stronicowanie i maksymalna wielkość tablicy jaka jest przekazywana liczy 10 elementów.
W taki sposób obrabiałem opis, po wykomentowaniu wszystko ruszyło.
|
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 10 Dołączył: 20.05.2005 Ostrzeżenie: (0%)
|
Sprawdź memory_limit, ZF tworząc obiekty pożera sporo pamięci. Przy kilku rekordach nie będzie problemu, lecz jeśli pola tekstowe są pokaźnych programów może Ci się skończyć pamięć (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Druga sprawa to PDO. ZF używa biblioteki pdo mysql do łączenia się z bazą, natomiast phpmyadmin bezpośrednio mysql (o ile dobrze pamiętam), czasami miałem problemy z PDO ale to przy bardziej złozonych zapytaniach (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Zwiększ limit do 512M w php.ini i sprawdź. BTW: Zainteresuj się silnikiem MYISAM + indeksy FULLTEXT. http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html, oferuje wiele ciekawych funkcji do wyszukiwania haseł + obliczanie trafności wyniku. Ten post edytował eai 4.10.2008, 08:30:37 |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 28.07.2007 Ostrzeżenie: (0%)
|
Dzięki wszystkim za odpowiedz. Problem był trywialny. Wszystko rozbijało się pętli gdy próbowałem sprawdzić wartość w tablicy która wykraczała poza zakres indeksu.
|
|
|
|
![]() ![]() |
|
Aktualny czas: 19.12.2025 - 13:50 |