Dieter: Mysql Big Selects

Hallo zusammen,

ERROR 1104: The SELECT would examine too many records and probably take a very long time. Check your WHERE and use SET OPTION SQL_BIG_SELECTS=1 if the SELECT is ok

Im Handbuch steht das mir dies Abhilfe schaft:

mysql_query("SET OPTION SQL_BIG_SELECTS=1");

ist aber leider nicht so ;-) http://www.mysql.com/doc/de/SET_OPTION.html

dort diskutieren auch andere User mit den gleichen Problemen aber leider verstehe ich nur 50% von dem was dort besprochen wird ;-(

Das ist meine Abfrage die geblockt wird ...

$view=mysql_query("SELECT id FROM tab WHERE id='".$_SESSION[nick_id]."' AND  type='0'");

Habt Ihr dort vieleicht einen Tipp für mich ?
Wenn es möglich ist etwas auf dem Server festzulegen, könnte ich da auch einen Tipp für gebrauchen ...

Viele Grüße und danke ...

Dieter

  1. yo,

    $view=mysql_query("SELECT id FROM tab WHERE id='".$_SESSION[nick_id]."' AND  type='0'");

    auf den ersten blick würde ich sagen, eine ganz normale abfrage. kritisch könnte in meinen augen nur das array sein, vielleicht blockt er bei einem single argument das array ab, weil er dort mehrere werte kommen sieht.

    versuch doch einfach mal den wert des array $_SESSION[nick_id] auszulesen und als konstatanten wert einzusetzten.

    SELECT id FROM tab WHERE id='Konstanter_wert' AND  type='0'

    Ilja

    1. versuch doch einfach mal den wert des array $_SESSION[nick_id] auszulesen und als konstatanten wert einzusetzten.

      SELECT id FROM tab WHERE id='Konstanter_wert' AND  type='0'

      ... grummel ;) konstanter Wert? was des ?

      in $_SESSION["nick_id"] steht 100% eine Zahl von 0-10 ...

      Die ganze Abfrage funzt auch wunderbar, solange die Tabelle nicht übervoll ist ...

      Sogar der PHPMyAdmin macht schlapp wenn ich die Tabelle einsehen will ...

      Gruß ;-)

      1. hallo,

        Sogar der PHPMyAdmin macht schlapp wenn ich die Tabelle einsehen will ...

        in dem Fall würd ich sagen, du soltest über deine Datenverwaltung nachdenken. Wenn du so eine Datendurchsatz hast, wäre eine andere Datenbank vermutlich die bessere Lösung, wenn mySQL "zu klein" wird.

        1. yo,

          in dem Fall würd ich sagen, du soltest über deine Datenverwaltung nachdenken. Wenn du so eine Datendurchsatz hast, wäre eine andere Datenbank vermutlich die bessere Lösung, wenn mySQL "zu klein" wird.

          hört sich mehr nach einen kleinen bug oder konfigurationsproblem an und weniger, dass es sich um zuviele daten handelt.

          Ilja

          1. hi,

            in dem Fall würd ich sagen, du soltest über deine Datenverwaltung nachdenken. Wenn du so eine Datendurchsatz hast, wäre eine andere Datenbank vermutlich die bessere Lösung, wenn mySQL "zu klein" wird.

            hört sich mehr nach einen kleinen bug oder konfigurationsproblem an und weniger, dass es sich um zuviele daten handelt.

            vielleicht fragen wir Dieter erst einmal, wie viele datensätze seine tabelle denn beinhaltet ...?

            gruss,
            wahsaga

            1. vielleicht fragen wir Dieter erst einmal, wie viele datensätze seine tabelle denn beinhaltet ...?

              Tja, wenn ich das auslesen könnt ;-) Selbst bei durchzählen kommt der Fehler ...

              Problem scheint aber durch zu sein, ich habe mir die neuste Mysql version gezogen und alles geht wieder ;-)

              Grüße

              Dieter