mysql5.7의 오류 1055에 대한 해결 방법: 먼저 my.cnf 구성 파일을 찾아서 연 다음 "only_full_group_by" 항목을 삭제하거나 mysql 명령줄을 열고 "select @@sql_mode" 명령을 실행하세요.
권장: "mysql tutorial"
mysql5.7 오류 1055
MySQL5.7 그룹의 새로운 기능, 오류 1055
MySQL은 원래 프로젝트 5.6 개발에 사용되었습니다. , 이후 5.7로 전환하면서 갑자기 원래 SQL 작업 중 일부에서 오류가 보고된 것을 발견했습니다. 오류 코드는 1055였습니다. 오류 메시지는 sql_mode의 "only_full_group_by"와 관련이 있었으며 온라인에서 원인을 찾아보니 only_full_group_by 모드가 다음과 같이 활성화되어 있었습니다. mysql5.7에는 대략 두 가지 해결 방법이 있습니다.
첫 번째: SQL 쿼리 문에서 그룹화를 필요로 하지 않는 필드에 any_value() 함수를 사용하세요.
물론 이는 많은 것을 개발한 프로젝트에는 적합하지 않습니다. 결국 원본 SQL을 수정해야 합니다
둘: my.cnf(windows 아래 my.ini) 구성 파일을 수정하고 only_full_group_by 항목을 삭제합니다.
저희 프로젝트의 mysql이 ubuntu에 설치되어 있습니다. 파일을 찾아서 열어보세요. sql_mode 구성 항목이 없으므로 삭제하고 싶어도 하실 필요는 없습니다.
물론, mysql 명령줄을 열고 명령을 실행하는 방법도 있습니다.
select @@sql_mode
이렇게 하면 sql_mode의 값을 알아내고 이 값을 복사한 후 my.cnf에 구성 항목을 추가할 수 있습니다(쿼리된 값은 삭제). only_full_group_by 이 옵션은 다른 항목을 복사합니다.):
sql_mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
[mysqld] 행이 주석 처리된 경우 주석을 켜는 것을 잊지 마십시오. 그런 다음 mysql 서비스를 다시 시작하세요.
참고:
set sql_mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
명령을 사용하여 한 세션의 구성 항목을 수정하면 다른 세션에는 적용되지 않습니다.
위 내용은 mysql5.7에서 오류 1055를 보고하면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!