안규 공부방

MS-SQL > datetime 과 smalldatetime의 차이

등록일 : 2022-07-12 14:35 조회수 : 89,717

MSSQL에서 시간을 나타내는 데이터형식은 두가지가 있습니다.
데이터타임(datetime)과 스몰데이터타임(smalldatetime)이 있죠.

이 두가지의 큰차이는

정확도                            필요 저장공간    
datetime        1/100초        8바이트    
smalldatetime        1분        4바이트    

여기에 스몰데이터타임은 사용할때 바로 변환이 되지 않는 경우가 꽤 있습니다.
예를 들면 ToString가 바로 먹히지 않는 경우가 있습니다. 이것이 언어를 타는 것인지 OLE를 타는 것인지는 모르겠습니다;;
덕분에 가끔 입력할때 삽질하는 경우가 좀있죠 ㅡ.-;;
거기다 다른 DB에서는 지원하지 않느 경우가 많아 대부분 다른DB로 전환하는 경우 컨버팅작업을 해야 하죠.

하지만 일반적인 웹사이트들은 보통 분단위까지만 기록하기 때문에 초단위는 기록하지 않는 스몰데이터타임이 유리한 면이 있습니다.



초단위까지의 정밀도가 필요하지 않다면 스몰데이터타임도 나쁘지 않죠.
형변환 문제만 발생하지 않는 다면 꽤 좋은 방법입니다.

가끔 날짜는 무조건 "데이터타임형이여야 한다!"라는 고정관념에 사로잡힌 분들을 보는데 날짜를 가지고 특별한 컨트롤을 하지 않고 단순이 화면에 표시만 하는 것이라면 문자열(char, varchar등등)이 더 나을수도 있습니다.
상황에 맞게 센스를 발휘해야 하죠 ㅎㅎㅎ
※ 혹시 도움이 되셨다면 댓글에 한마디 남겨주세요!
작성자   비밀번호
자동글 방지     (자동글 방지 기능입니다.)
내용   댓글달기 
이메일 문의 : cak0280@nate.com  
Copyright 2000 By ENTERSOFT.KR All Rights Reserved.