본문 바로가기
VB.NET&MSSQL

[MSSQL] 날짜 타입 변경

by TobeDalin 2020. 4. 27.
반응형

MSSQL 날짜타입 변경

ALTER TABLE table_name
ALTER COLUMN column_name datatype;

 

현재 운영중인 테이블의 데이터 타입을 변경하려고 합니다.

DATE TYPE을 DATETIME 형태로.

 

메인서버DB는 한국서울에 호스팅 중이고,

접속 사용자는 캄보디아, 인도네시아, 베트남, 중국, 한국입니다.

 

등록도 되고, 조회도 되는데 문제는 

한국과 중국의 시차는 1시간

나머지는 한국과 2시간의 시차가 발생합니다.

 

날짜형태를 주면 아주 편리하지만, 날짜 지정없이 전체를 조회하고 싶을때 NULL "" 지정이 안된다는 점 때문에.

날짜 NULL 대신 처리하는 함수를 만들어 사용하는 등 조금 불편했습니다.

 

국가간 시차때문에 문자로 등록하는 것도 문제가 되는 것은 각국의 날짜 형태가 한국처럼 YYYY-MM-DD 가 아니라는 거죠.

 

시차처리를 위해 등록할 때 YYYY-MM-DD 12:00:00:000 을 붙이기로 했습니다.

 

그래서, DATE 타입은 DATETIME으로 변경하고자 하는데.

변경후에도 UPDATE 문장으로  12:00:00:000를 붙여줘야 겠습니다.

 

SELECT DATEADD(HOUR, 12, '2017/08/25') AS DateAdd;

 

YYYY-MM-DD 12:00:00:000 를 YYYY-MM-DD 02:00:000 으로 수정합니다.

 

update WORK_CUT_RESULT
set cut_date = DATEADD(HOUR, -10, cut_date) 
where cut_date <'2020-03-05'

반응형

'VB.NET&MSSQL' 카테고리의 다른 글

VB.NET 관리자 권한으로 실행하기  (0) 2020.06.26
VB.NET EXCEL PageSetup 속성  (0) 2020.05.21
[MS-SQL] SQL 날짜 함수  (0) 2020.04.27
[MSSQL] SQL SERVER BACKUP SCHEDULE 설정  (0) 2020.04.26
[vb.net] 이미지 파일 형식  (0) 2020.04.25

댓글