개발개발/Database

MySql 에서 datetime 과 timestamp 의 차이점...

꾸냥 2009. 10. 30. 17:07
다분히 실수에서 출발하였다. 간단한 페이지 만들면서 생각없이 timestamp 를 사용하였는데 이녀석은 CURRENT_TIMESTAMP 로 변경이 있을때마다 자동으로 날짜에 관한 데이터를 변경해준다. datetime 은 안됨 그래서 뭐가 다른지 한번 찾아봤다.

차이점은 몇가지가 있는데

우선 자동입력 기능 여부
DATETIME 은 일일히 수정시마다 날짜를 적어줘야함
TIMESTAMP 는 날짜를 지정 안해줘도 자동으로 입력 가능함 ( 옵션에 CURRENT_TIMESTAMP 를 사용할 경우 )

두번째로 두 자료형에서 지원되는 범위도 다르다.
DATETIME 의 경우 1000년 ~ 9999년 (아마테라스가 생각나는건... 라키시스 제발좀 훗딱 내주지...) 까지 지원하고
TIMESTAMP 의 경우 1970년 ~ 2037년 까지만 사용 가능하다.

마지막으로 크기가 다르다.
DATETIME 는 저장공간을 8bytes 잡아먹고
TIMESTAMP 는 4bytes 를 잡아 먹는다.

뭐... 익숙한건 DATETIME 이라 계속 그걸로 쓸꺼 같지만 TIMESTAMP 도 나름 괜찬을꺼 같다는 생각이 드네...
반응형