CURRENT_TIMESTAMP로 여러 TIMESTAMP 열 관리
MySQL에서 CURRENT_TIMESTAMP 기본값으로 여러 TIMESTAMP 열을 정의하면 "잘못된 테이블 정의" 오류가 발생할 수 있습니다. ; DEFAULT 또는 ON UPDATE 절에 CURRENT_TIMESTAMP가 있는 TIMESTAMP 열은 하나만 있을 수 있습니다. 이 제한을 극복하려면 최신 MySQL 버전(예: 5.6.25)에서 다음 접근 방식을 고려하십시오.
해결책:
다음과 같이 테이블 정의를 수정합니다.
<code class="sql">CREATE TABLE `msgs` ( `id` INT PRIMARY KEY AUTO_INCREMENT, `msg` VARCHAR(256), `ts_create` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, `ts_update` TIMESTAMP NOT NULL, CONSTRAINT UPDATE_ON_CHANGE_ts_update FOREIGN KEY (`ts_update`) REFERENCES `msgs` (`ts_create`) ON DELETE SET NULL ON UPDATE CURRENT_TIMESTAMP )</code>
이 수정된 스키마에서:
이 접근 방식을 사용하면 MySQL 오류를 피하면서 레코드 생성 및 업데이트 타임스탬프를 모두 추적하는 원하는 동작을 유지할 수 있습니다.
위 내용은 MySQL에서 CURRENT_TIMESTAMP를 사용하여 여러 TIMESTAMP 열을 관리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!