미채택 완료

mssql에서 mysql로 이전시 날짜관련 문의 드립니다.

2014-10-29 (수) 15:00:58 4,410
안녕하세요 몇일째 해메고 있네요^^ 마이그레이션 작업은 첨이다 보니 많이 막히네요

고수님들의 고견 부탁드릴께요

1. 진행순서
mssql이 버전도 예전 버전이고 해서 내보내기 xls로 변환해서 필요한 데이터만 추출해서 mysql에 옮기고 있습니다.

2. xls로 넘어오는게 2012-03-25  3:51:22 PM 이런식으로 regdate 로 엑셀로 넘어옵니다.

3. 이것을 mysql의 datetime 으로 넣으니 값이 안들어 가네요 00-00-00 00:00:00 이런식으로 ㅜㅜ

4. 쿼리로

$sql = " INSERT INTO 테이블명
                    SET  wr_datetime =  date_format($workdate,'%Y-%m-%d %H:%i:%s'  )";

$workdate는 엑셀에서 받아온 데이터 값입니다. (2013-03-25  3:51:22 PM)엑셀값

5.mysql에 들어가겠금 2014-03-25 15:51:22 이런식으로 넣을려고 하는데 00-00-00 00:00:00

조언좀 부탁드리겠습니다. (__)
|

답변 4개 / 댓글 2개

2014-10-30 (목) 09:22:45

xls파일에서 셀서식에 날짜형식으로 넣어서 가져와서 가공을 해서 저장을 해야 하나 보네요

저도 만들어만 놓고 테스트를 안해 봣었는데 테스트 해보니까 그러네요

그녀석을 가져와서 가공을 해서 저장을 해야 하는가봐유

wr_datetime =  '".date_format($workdate, '%YY-%mm-%dd %H:%i:%s')."'"; 

이렇게 한번 해보세요 

엑셀쉘에 40627.660671296  이 이숫자 넣으면

날짜표시하면 2011-03-25  3:51:22 PM 이렇게 나옵니다.

분명 ms계열과 유닉스 계열의 시간 변환을 해줘야 할꺼 같은데..

찾아헤메길 언 4일째 되어가네요 ㅜㅜ

고수님들 제발 도움 부탁드립니다.

2014-10-29 (수) 15:27:40

엑셀 >> 셀서식 >> 표시형식 >> 사용자지정 >> 형식 >> yyyy-mm-dd hh:mm:ss

이렇게 바꾸고 저장해보세요 

답변에 대한 댓글 1개

표시형식을 바꿔도 $workdate 값이 40627.660671296
출력이 되어서 메모장으로 옮겼다가 다시 echo 출력해 보면 40627.660671296 이렇게 나오네요

가운데 저 점이 mssql에서 뽑아서 그런가... 형식이 달라서 그럴까요? 완전 정말 몇일째 헤매고 있네요 ..

$sql = " INSERT INTO 테이블명 

                    SET  wr_datetime =  '".date('Y-m-d H:i:s',strtotime($workdate))."'"; 

 

이렇게 한번 해보세요

답변에 대한 댓글 1개

출력값이
1970-01-01 09:00:00 이렇게 나오네요 이렇게라도 나오니 가능성이...
계속 0000-00-00 00:00:00 데이터값 안들어 왔었는데...

답변을 작성하려면 로그인이 필요합니다.