0
많은 MySQL 데이터베이스 테이블에서 int UNSIGNED
필드에 타임 스탬프 (php time()
)를 저장했습니다. 그러나 time()
은 올바르게 호출 할 경우 13 자리 값을 반환하고 INT UNSIGNED
값은 2147483647
까지만 저장할 수 있으며 최대 길이는 10 자리입니다. 따라서 time()
에 의해 반환 된 값은 int
필드에 저장하기에 너무 큰 숫자가됩니다.MySQL이 INT를 저장하는 방법과 일치하지 않습니까?
그러나 시간 소인은 잘리지 않으므로 어떻게 큰 값을 저장할 수 있습니까? 데이터베이스 불일치입니까 아니면 뭔가 빠졌습니까?
nos, 귀하의 답변은 유효하지 않습니다. 현재 실제로 신기원 이후로 1343399803 초가 경과했습니다. :] –
아아 나는 숫자를 잘못 계산 했어야합니다 .. 그래서 이것은 악명 높은 y2k38 문제입니까? 확실한 해결책은 시간이 올 때 필드 유형을 'BIGINT UNSIGNED'로 변경하는 것입니다. –