Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Laravel 5.4 Raw nie działa zgodnie z oczekiwaniami, ale działa w mySQL

Laravel 5.3 i 5.4 domyślnie używają trybu ścisłego dla mysql. Oznacza to, że ONLY_FULL_GROUP_BY Tryb SQL jest również włączony. Ale jeśli twoja wersja MySQL to co najmniej 5.7.5, możesz pogrupować według klucza podstawowego tabeli i użyć wszystkich kolumn z tej tabeli w klauzuli SELECT, ponieważ są one funkcjonalnie zależne od PK.

(Obsługa MySQL dla GROUP BY )

Twoje opcje to:

Zaktualizuj MySQL do co najmniej 5.7.5

Lub wyłącz tryb ścisły w konfiguracji db laravels (config/database.php )

// ..
'connections' => [
    // ..
    'mysql' => [
        // ..
        'strict' => false,
        // ..
    ],
    // ..
]

Aktualizacja

Zła wiadomość dla użytkownika MariaDB (i xampp):MariaDB wydaje się nie obsługiwać "wykrywania zależności funkcjonalnej" (jeszcze). Wszystko, co mogłem znaleźć, to ten bilet .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql jak znaleźć całkowitą liczbę wierszy potomnych w odniesieniu do rodzica

  2. MySQL jaki jest maksymalny rozmiar bazy danych?

  3. Jak połączyć trzy zapytania MySQL w jedno?

  4. NAPRAW:MySQL – SELECT Polecenie odrzucone użytkownikowi

  5. Jak na wyłączność zablokować bazę mysql?