2016-12-07 6 views
0

SQL Server 2012 사용. 텍스트에 대한 WHERE 절이 대/소문자를 구분하지 않음을 알았습니다. 그렇다면 왜 어떤 사람들은 절차에서 다음 형식을 사용합니까?SQL Server 프로 시저 매개 변수에 UPPER 또는 LOWER를 사용하는 이유는 무엇입니까?

WHERE UPPER(fieldName) = UPPER(@fieldName) 

다른 프로그래밍 언어를 사용하여 다른 프로그램에서 프로 시저를 호출 할 때와 관련이 있습니까? 또는 SQL을 처리하기 위해 독점적입니까?

내 절

WHERE fieldname = 'UNITED STATES' 

쓸 수 있고 등 중 미국, 미국, 미국, 모든 레코드를 반환합니다

그것은 대소 문자를 구별 할 수 있습니다
+7

대소 문자를 구분할 수 있습니다 ... 데이터 정렬에 따라 다릅니다. https://msdn.microsoft.com/en-us/library/ms144250(v=sql.105).aspx – scsimon

+1

아, 알겠습니다. 답변 및 링크에 대한 감사. – gravityclown

+0

문제 없음. 다른 서버의 테이블을 조인하거나 다른 언어로 된 DB를 처리 할 때 "차 이점"을 실행할 가능성이 높습니다. 확실히 읽을 가치가 있습니다. 건배 – scsimon

답변

2

는 ...에 따라 대조.

MSDN Documentation on Collation (one of many)

서로 다른 서버에서 테이블을 조인, 또는 다른 언어로 DB의 다루고있는 경우 가능성이 정렬 "차이"로 실행하겠습니다. 확실히 읽을만한 가치가 있습니다.