MySQL에서 기본값을 사용하여 TEXT 열을 생성하려고 하면 오류가 발생합니다. Windows 플랫폼. 그러나 Linux 및 기타 버전에서는 경고만 표시됩니다. 이러한 불일치로 인해 수많은 사용자가 당황했고 근본적인 이유에 대한 추측이 촉발되었습니다.
MySQL Bugtracker의 스레드에 따르면 TEXT 열에 대한 기본값이 없는 것은 버그로 간주되지 않습니다. 그러나 플랫폼 간 동작 불일치로 인해 호환성 문제가 발생할 수 있습니다. MySQL 개발자인 Bryce Nesbitt는 이러한 불일치가 Windows와 다른 플랫폼 간의 엄격도 수준의 차이에서 비롯된다고 지적했습니다.
Windows에서는 "no DEFAULT" 규칙이 오류로 적용되는 반면, 다른 플랫폼에서는 오류로 적용됩니다. 경고로 간주되는 경우가 많습니다. 이러한 차이는 관대한 플랫폼에서 작성된 코드가 나중에 엄격한 플랫폼에서 실행될 때 문제를 일으킬 수 있습니다.
이 문제를 완화하기 위해 개발자는 /my.ini 구성 파일을 수정하여 Windows의 MySQL 5에서 엄격 모드를 비활성화할 수 있습니다. . 여기에는 엄격 모드 설정을 "sql_mode='MYSQL40'"으로 바꾸고 MySQL 서비스를 다시 시작하는 작업이 포함됩니다. 또한 루트/관리자 사용자는 다음 쿼리를 실행하여 엄격 모드를 전역적으로 비활성화할 수 있습니다.
mysql_query("SET @@global.sql_mode='MYSQL40'");
위 내용은 일부 플랫폼에서 MySQL TEXT 열에 기본값이 부족한 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!