Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [sql][php]Zapytanie , które zwróci ilość zapytań do SQL oraz czas ich wykonania
Forum PHP.pl > Forum > Przedszkole
Adsfer16
Witam...
poszukuję zapytania do bazy danych, które zwróci mi ogólną ilość zapytań do bazy danych, oraz czas ich wykonania...

Byłbym wdzięczny za pomoc
Speedy
Zapewne chodzi Ci o zliczanie wykonanych zapytań do bazy danych. Żeby je policzyć powinieneś posiadać klasę do obsługi bazy danych, a w niej specjalną metodę do wykonywania zapytań, która oprócz tego, że wykona zapytanie, zwiększy licznik zapytań o 1.

Przykładowo:

  1. <?php
  2.  
  3. class bazaDanych
  4. {
  5.  
  6.  // liczba zapytań do bazy
  7.  public $queries = 0;
  8.  
  9.  public function __construct()
  10.  {
  11. $this->connect();
  12.  }
  13.  
  14.  public function connect()
  15.  {
  16. // łączymy się z bazą danych
  17.  }
  18.  
  19.  public function query($sql)
  20.  {
  21. mysql_query($sql);
  22. $this->queries++;
  23.  }
  24.  
  25. }
  26.  
  27. // tworzymy obiekt
  28. $baza = new bazaDanych;
  29.  
  30. // wykonujemy zapytania
  31. $baza->query('select * from tabela1');
  32. $baza->query('select * from tabela2');
  33.  
  34. // wyświetlamy liczbę zapytań
  35. print "Liczba zapytań<br/>\n";
  36. print($baza->queries);
  37. ?>


To tylko schematyczny kod - na jego bazie możesz stworzyć własną klasę. Chodzi tylko o sam pomysł.
tomeksobczak
  1. mysql> SHOW STATUS LIKE 'Questions';
  2. +---------------+-----------+
  3. | Variable_name | Value |
  4. +---------------+-----------+
  5. | Questions | 705238565 |
  6. +---------------+-----------+
  7. 1 row IN SET (0.03 sec)


od uruchomienia bazy do momentu tego zapytania
Speedy
Cytat(tomeksobczak @ 7.10.2007, 08:56:46 ) *
  1. mysql> SHOW STATUS LIKE 'Questions';
  2. +---------------+-----------+
  3. | Variable_name | Value |
  4. +---------------+-----------+
  5. | Questions | 705238565 |
  6. +---------------+-----------+
  7. 1 row IN SET (0.03 sec)


od uruchomienia bazy do momentu tego zapytania


Wtedy podczas stałych połączeń z bazą chyba wyświetli się liczba zapytań, które zostały wykonane od momentu połączenia, lecz nie zostanie wyświetlona liczba zapytań, które zostały wykonane podczas jednorazowej operacji.
tomeksobczak
wyswietli sie liczba zapytan od uruchomienia serwera mysql a nie od momentu zainicjowania polaczenia
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.