Tabelle auslesen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Tabelle auslesen

    Guten Abend,

    ich habe eine Tabelle mit 48767 Einträgen. Als ich diese auslesen wollte, erhielt ich die Meldung: Fatal error: Allowed memory size of 8388608 bytes exhausted at (null):0 (tried to allocate 32 bytes) in

    Ich wollte die Datensätze in ein Array einlesen.

    PHP-Code:
    $liste = array();
    if(
    $obj mysql_query("SELECT id FROM test ORDER BY id ASC"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }

    Dabei habe ich auch LIMIT verwendet, aber da erhielt ich auch die Fehlermeldung:

    PHP-Code:
    $liste = array();
    if(
    $obj mysql_query("SELECT id FROM dhs_pr_domain ORDER BY id ASC LIMIT 0, 5000"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }
    }
    if(
    $obj mysql_query("SELECT id FROM dhs_pr_domain ORDER BY id ASC LIMIT 5001, 5000"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }
    }
    if(
    $obj mysql_query("SELECT id FROM dhs_pr_domain ORDER BY id ASC LIMIT 10002, 5000"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }
    }
    if(
    $obj mysql_query("SELECT id FROM dhs_pr_domain ORDER BY id ASC LIMIT 15003, 5000"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }
    }
    if(
    $obj mysql_query("SELECT id FROM dhs_pr_domain ORDER BY id ASC LIMIT 20004, 5000"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }
    }
    if(
    $obj mysql_query("SELECT id FROM dhs_pr_domain ORDER BY id ASC LIMIT 25005, 5000"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }
    }
    if(
    $obj mysql_query("SELECT id FROM dhs_pr_domain ORDER BY id ASC LIMIT 30006, 5000"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }
    }
    if(
    $obj mysql_query("SELECT id FROM dhs_pr_domain ORDER BY id ASC LIMIT 35007, 5000"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }
    }
    if(
    $obj mysql_query("SELECT id FROM dhs_pr_domain ORDER BY id ASC LIMIT 40008, 5000"))
    {
        while(
    $row mysql_fetch_assoc($obj))
        {
            
    array_push($liste,$row);
        }

    Was mache ich falsch? Wer kann mir bitte weiterhelfen?

  • #2
    verzeihung, aber wozu brauchst du fast 50k ids in einem array?

    Kommentar


    • #3
      Ich wollte die Datensätze in ein Array einlesen.
      und wieso das?

      Dabei habe ich auch LIMIT verwendet, aber da erhielt ich auch die Fehlermeldung:
      weil du mit dem limit nur die daten auf verschiedene querys im gleichen script verteilst und dennoch alle abfragst.

      Was mache ich falsch?
      so ziemlich alles ...


      was hast du eigentlich vor?
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #4
        Vielen Dank für eure Antworten. Ich möchte nur die etwa 50000 Datensätze auslesen. Mehr nicht.

        Kommentar


        • #5
          das ist ja gerade der fehler - ich kann mir nicht vorstellen, wozu man 50k datensätze braucht. du kannst sie doch eh nicht alle auf einmal ausgeben.

          Kommentar

          Lädt...
          X