2010-03-12 2 views
3

데이터베이스 문화권 (SQL Server 2005)을 쿼리하려면 어떻게해야합니까?데이터베이스 문화권 (SQL Server 2005)을 쿼리하려면 어떻게해야합니까?

클라이언트 서버가 개발자 서버와 동일한 culture에서 실행되지 않기 때문에 날짜를 삽입하고 가져 오는 데 문제가 있습니다.

내가 날짜를 조정할 수 있습니다,하지만 서버의 문화를 알 필요가 ...

+0

SQL Server가 OS에서 문화 정보를 가져 왔다고 생각합니다 (CLR 쿼리에 대해 언급하지 않는다고 가정) – Kane

+0

개발자 OS 언어가 서버 OS 언어와 다른 경우 문제가 발생합니다. –

답변

6

이 사용하여 현재 구성된 언어에 대해 알 수 있습니다 :

SELECT @@language 

을 당신은이 체크 아웃 할 수 있습니다

EXEC sp_helplanguage 

그것은 가능한 언어를 표시되고 날짜 형식 등. 이것은 기본적으로 sys.syslanguages 시스템 + 탈 로그 테이블의 내용입니다.

날짜 처리 - 바람직하게 날짜 기반의 매개 변수화 된 쿼리를 사용하거나 날짜 문자열이 필요한 경우 SQL 서버에서 ISO-8601 date format을 사용하십시오.

형식 YYYYMMDD 또는 YYYYMMDD HH:MM:SS은 SQL Server의 현재 선택된 언어 설정에 관계없이 항상 작동합니다.

0

당신은 그것을 필요 없어요. 시각화/문자열 변환은 클라이언트에서 발생으로 날짜를 항상 클라이언트에서 입력/OUPUT을 얻을로

  • 날짜, 서버 문화는 여기에 무관하다. 따라서 변수 foe 쿼리 매개 변수를 사용하고 적절한 유형을 출력 (자동 발생)해야하며 시작하는 데 문제가 없습니다.
  • 문자열을 삽입해야하는 경우 모든 문화권 설정에서 일반 폴백으로 인식되는 ISO 양식 (2010-12-05 23 : 15 : 22.233)을 사용하십시오.
관련 문제