Ich habe diesen Fehlerbericht hier gelesen:https://bugs.php.net/bug. php?id=51386
Ihr Problem scheint aufzutreten, weil es einen longblob
gibt oder longtext
in den Spalten der Tabelle.
longtext
/ longblob
haben eine maximale Länge von 4294967295
[4GB] Deshalb versucht mysqli, diesen Speicher für den Puffer zuzuweisen, um sicherzustellen, dass nichts verloren geht. Ich würde vorschlagen, dass Sie mediumtext
verwenden (16777215 [16MB] maximale Länge), das sollte normalerweise für alles reichen.
Aktualisierung: Da diese Antwort einige Aktivitäten gesehen hat, füge ich diese Lösung von Phil_1984 hinzu (siehe Kommentare)
=> Wenn Sie $stmt->store_result()
verwenden Sie können mysqli mit longblob
verwenden / longtext
ohne den Fehler zu erhalten.
-
Alte Antwort: Ich schlage vor, dass Sie entweder die Spalte in einen anderen Typ (Mediumtext) ändern oder PDO verwenden (ich denke, es hat dieses Problem nicht). aber wenn Sie die Spalte als Langtext behalten wollen, müssen Sie Ihre MySQL-Bibliothek wechseln
Zitat von PHP Dev: