2016-12-08 4 views
0

SSMA를 사용하여 액세스 백엔드를 SQL Server 2014로 마이그레이션했습니다. 모든 양식, 쿼리 및 보고서를 SQL과 함께 업데이트했습니다. 처음부터 datetime이 모든 형식에서 잘못 표시되었다는 것을 알았습니다 (내 사용자는 날짜와 시간이 아닌 날짜 만 저장하려고합니다). 그리고 나중에 Access FE에서 문제를 쉽게 해결할 수 있다고 가정했습니다. .액세스 프론트 엔드에서 SQL 백엔드에서 datetime 필드를 처리하는 방법은 무엇입니까?

이제는 프로젝트의 끝 부분에 도달했습니다. 양식과 보고서의 필드를 날짜와 시간 대신에 날짜로만 변환하는 쉬운 방법을 찾을 수 없었습니다. SQL.

적어도 내가 (연결된 테이블로 액세스 할 수있는) SQL 뷰를 기반으로하는 몇 가지 보고서를 사용하여 그 작업을 시도한 한 가지는 날짜를 변환하는보기를 수정하는 것입니다. convert(varchar,StartDate,101) as StartDate

DateTime (yyyy-mm-dd hh:mm:ss) 필드를 SQL에서 액세스 할 때 날짜 (mm/dd/yyyy)로 쉽게 변환 할 수 있습니까?

mm/dd/yyyy 

하거나 Short Date은, 그러나, 지역화 :

+0

보기에서'캐스트 (StartDate as date)'를 시도 했습니까? –

+0

@ Mat'sMug 그는 SQL보기 자체를 변경하고 싶지 않을 수도 있습니다.이 경우 양식에 형식 기능 만 있으면됩니다.'format ("2016-12-09 08:40:20", "yyyy- mm-dd ")' – Harlekuin

답변

1

당신은 날짜 값이 들어있는 텍스트 상자의 형식 속성을 설정해야합니다. SQL 서버에서 데이터 유형이 날짜 시간하지 DATETIME2 텍스트로 ODBC 드라이버 반환하는 경우

이것은 물론에만 작동합니다.

+0

답장을 보내 주셔서 감사합니다. 나는 당신의 제안을 시도했다. @Gustav 그리고 그것은 차이를 만드는 것처럼 보이지 않았다. 임의의 날짜 텍스트 상자의 형식 속성에서 "mm/dd/yyyy"와 "간단한 날짜"설정을 시도했으며 둘 다 날짜와 시간을 표시했습니다. 실제로 약간의 악화 이후 지금은 그것의 권리를 정당화 그래서 그냥 시간을 볼 수 있습니다 때까지 왼쪽 (이미지를 삽입하려면 Ctrl + i를 작동시키지 못했습니다 ...) "SQL Server"를 사용하여 ODBC를 사용하고 있습니다 운전자. – Ryan

+0

캐스팅은 테이블을 기반으로하는 양식에는 도움이되지 않습니다. 난 날짜를 표시하는 모든 양식에 대한보기를 만들어야 싫어! – Ryan

+0

"날짜"는 형식이 지정되지 않으면 텍스트로 표시됩니다. 즉, SQL Server에서 _DateTime__이 아닌 _DateTime__으로 필드를 정의했을 가능성이 큽니다. 응용 프로그램에서이 위치를 수정해야 할 것입니다. 날짜와 텍스트 및 viceversa간에 변환해야합니다. 재미 없어. – Gustav