Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menyelesaikan Ralat \'Max Join Size\' dalam MySQL?
Memahami Ralat "Max Join Size" dalam MySQL
Apabila bekerja dengan pertanyaan pangkalan data kompleks yang melibatkan gabungan, adalah penting untuk mengetahui tentang berpotensi untuk menghadapi mesej ralat: "SELECT akan memeriksa lebih daripada MAX_JOIN_SIZE baris." Ralat ini menunjukkan bahawa SQL Server meramalkan bahawa menyertai baris yang dipilih akan mengakibatkan penggunaan memori yang berlebihan yang melebihi had yang ditentukan.
Punca ralat
Saiz Ralat Gabungan Maks " biasanya berlaku dalam kes berikut:
Menyelesaikan masalah
Untuk membetulkan ralat ini, anda boleh mengambil langkah berikut:
Apabila bekerja dengan PHP, anda perlu menetapkan SQL_BIG_SELECTS=1 sebelum pertanyaan utama . Ini akan membolehkan MySQL mengendalikan set hasil yang besar:
<code class="php">$mysqli = new mysqli("localhost", "root", "password", "db"); $mysqli->query("SET SQL_BIG_SELECTS=1"); // Set it before your main query $results = $mysqli->query("SELECT a, b, c FROM test"); while($row = $results->fetch_assoc()){ echo '<pre class="brush:php;toolbar:false">'; print_r ($row); echo ''; }
Dengan melaraskan atau memintas had MAX_JOIN_SIZE, anda boleh menjalankan pertanyaan anda dengan jayanya tanpa mendapat ralat gabungan yang terlalu besar.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat \'Max Join Size\' dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!