Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Membetulkan Ralat \'Incompatible with sql_mode=only_full_group_by\' dalam Laravel Eloquent?

Bagaimana untuk Membetulkan Ralat \'Incompatible with sql_mode=only_full_group_by\' dalam Laravel Eloquent?

Mary-Kate Olsen
Lepaskan: 2024-11-23 12:10:19
asal
335 orang telah melayarinya

How to Fix the

Menyelesaikan Ralat Tidak Serasi dengan sql_mode=only_full_group_by dalam Laravel Eloquent

Pertanyaan Laravel Eloquent boleh menghadapi "incompatible_mode_on_group" apabila pertanyaan termasuk lajur bukan agregat dalam senarai SELECT yang tidak bergantung secara fungsi pada lajur dalam klausa GROUP BY. Untuk menyelesaikan isu ini, mod ketat MySQL boleh dilumpuhkan dalam tetapan sambungan pangkalan data.

Dalam kod contoh yang disediakan, pertanyaan dikumpulkan mengikut store_id dan memesan mengikut updated_at, tetapi lajur id juga disertakan dalam PILIH senarai. Memandangkan id tidak bergantung secara fungsi pada store_id, ia tidak boleh disertakan dalam senarai PILIH tanpa pengagregatan.

Untuk menyelesaikan ralat, lumpuhkan mod ketat MySQL dengan menambahkan konfigurasi berikut pada tetapan sambungan pangkalan data anda dalam konfigurasi/pangkalan data Fail .php:

'connections' => [
    'mysql' => [
        // Behave like MySQL 5.6
        'strict' => false,

        // Behave like MySQL 5.7
        'strict' => true,
    ]
]
Salin selepas log masuk

Melumpuhkan mod ketat membolehkan lajur tidak teragregat dimasukkan dalam senarai PILIH walaupun ia tidak bergantung pada lajur dalam klausa GROUP BY.

Tetapan Konfigurasi Tambahan

Pilihan konfigurasi lanjut yang berkaitan dengan mod ketat boleh didapati dalam catatan blog oleh Matt Stauffer:

  • https://mattsauer.com/blog/laravel-5-3-group-by-hack-with-mysql-strict-mode

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat \'Incompatible with sql_mode=only_full_group_by\' dalam Laravel Eloquent?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan