sql >> Database >  >> RDS >> Mysql

ERROR 1067 (42000):Ongeldige standaardwaarde voor 'end_time'

MySQL behandelt timestamp op een speciale manier is dat een beetje moeilijk te vinden in de documentatie als je niet weet wat je zoekt:

Dat betekent dat uw tweede timestamp not null kolom krijgt een impliciete standaardwaarde van '0000-00-00 00:00:00' , wat niet is toegestaan ​​in combinatie met de NO ZERO DATE en strikt sql-modus (die standaard is ingeschakeld in MySQL 5.7) en resulteert in uw fout.

Om uw probleem op te lossen, schakelt u de optie --explicit_defaults_for_timestamp . Het behandelt de timestamp kolommen zoals u had verwacht (en zal sowieso het standaardgedrag zijn in een toekomstige MySQL-release), of sta toe dat ze null zijn .



  1. php:snelste manier om een ​​5-cijferig nummer te genereren dat nog niet in de MySQL db-kolom staat (met een uniek attribuut)

  2. MySQL swap primaire sleutelwaarden

  3. hoe de kolomnaam in de tabel te wijzigen (bijwerken) met MySQL-workbench?

  4. Mysql:hoe krijg je alle rijen met meer dan een bepaald aantal decimalen na de punt?