데이터 형식 사용

적용 대상: SQL Server Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System(PDW)

SQL Server Native Client ODBC 드라이버 및 SQL Server 다음과 같은 데이터 형식 사용을 적용합니다.

데이터 형식 제한 사항
날짜 리터럴 날짜 리터럴은 SQL_TYPE_TIMESTAMP 열(datetime 또는 smalldatetime의 데이터 형식 SQL Server)에 저장되는 경우 시간 값은 오전 12:00:00.000입니다.
moneysmallmoney moneysmallmoney 데이터 형식의 정수 부분만 중요합니다. 데이터 형식 변환 중에 SQL money 데이터의 소수 부분이 잘리면 SQL Server Native Client ODBC 드라이버는 오류가 아닌 경고를 반환합니다.
SQL_BINARY(Null 허용) SQL Server 버전 6.0 이하의 인스턴스에 연결된 경우 SQL_BINARY 열이 null을 허용하면 데이터 원본에 저장된 데이터는 0으로 채워지지 않습니다. 이러한 열의 데이터를 검색하면 SQL Server Native Client ODBC 드라이버가 오른쪽에 0으로 채워집니다. 그러나 연결과 같은 SQL Server 수행하는 작업에서 생성된 데이터에는 이러한 패딩이 없습니다.

또한 데이터가 SQL Server 6.0 이하의 인스턴스에서 이러한 열에 배치되면 SQL Server 열에 너무 길면 오른쪽의 데이터가 잘립니다.

참고: SQL Server Native Client ODBC 드라이버는 SQL Server 6.5 이하에 대한 연결을 지원합니다.
SQL_CHAR(잘림) SQL Server 6.0 이하의 인스턴스에 연결되고 데이터가 SQL_CHAR 열에 배치되면 SQL Server 데이터가 열에 맞지 않는 경우 경고 없이 오른쪽에서 잘립니다.

참고: SQL Server Native Client ODBC 드라이버는 SQL Server 6.5 이하에 대한 연결을 지원합니다.
SQL_CHAR(Null 허용) SQL Server 6.0 이하의 인스턴스에 연결된 경우 SQL_CHAR 열이 null을 허용하면 데이터 원본에 저장된 데이터는 공백으로 채워지지 않습니다. 이러한 열의 데이터를 검색하면 SQL Server Native Client ODBC 드라이버가 오른쪽에 공백으로 채워집니다. 그러나 연결과 같은 SQL Server 수행하는 작업에서 생성된 데이터에는 이러한 패딩이 없습니다.

참고: SQL Server Native Client ODBC 드라이버는 SQL Server 6.5 이하에 대한 연결을 지원합니다.
SQL_LONGVARBINARY, SQL_LONGVARCHAR, SQL_WLONGVARCHAR 여러 행에 영향을 주는 SQL_LONGVARBINARY, SQL_LONGVARCHAR 또는 SQL_WLONGVARCHAR 데이터 형식(WHERE 절 사용)이 있는 열의 업데이트 SQL Server 6의 인스턴스에 연결된 경우 완전히 지원됩니다. x 이상. SQL Server 4.2x 인스턴스에 연결된 경우 S1000 오류 "부분 삽입/업데이트. 텍스트 또는 이미지 열의 삽입/업데이트가 실패했습니다"가 반환됩니다.

참고: SQL Server Native Client ODBC 드라이버는 SQL Server 6.5 이하에 대한 연결을 지원합니다.
문자열 함수 매개 변수 문자열 함수에 대한 string_exp 매개 변수는 데이터 형식 SQL_CHAR 또는 SQL_VARCHAR 합니다. SQL_LONG_VARCHAR 데이터 형식은 문자열 함수에서 지원되지 않습니다. SQL_CHAR 및 SQL_VARCHAR 데이터 형식은 최대 길이가 8,000자로 제한되므로 count 매개 변수는 8,000자 미만이어야 합니다.
시간 리터럴 datetime 또는 smalldatetime의 데이터 형식을 SQL Server SQL_TIMESTAMP 열에 저장된 시간 리터럴의 날짜 값은 1900년 1월 1일입니다.
timestamp NULL 값만 타임스탬프 열에 수동으로 삽입할 수 있습니다. 그러나 타임스탬프열은 SQL Server 의해 자동으로 업데이트되므로 NULL 값을 덮어씁니다.
tinyint SQL Server tinyint 데이터 형식은 서명되지 않았습니다. tinyint 열은 기본적으로 SQL_C_UTINYINT 데이터 형식의 변수에 바인딩됩니다.
별칭 데이터 형식 SQL Server 4.2x의 인스턴스에 연결된 경우 ODBC 드라이버는 열의 null 허용 여부를 명시적으로 선언하지 않는 열 정의에 NULL을 추가합니다. 따라서 별칭 데이터 형식의 정의에 저장된 Null 허용 여부는 무시됩니다.

SQL Server 4.2x의 인스턴스에 연결된 경우 문자 또는이진의 기본 데이터 형식이 있고 null 허용 여부가 선언되지 않은 별칭 데이터 형식의 열은 varchar 또는 varbinary 데이터 형식으로 만들어집니다. SQLColAttribute, SQLColumnsSQLDescribeCol 은 이러한 열의 데이터 형식으로 SQL_VARCHAR 또는 SQL_VARBINARY 반환합니다. 해당 열에서 검색한 데이터는 채워지지 않습니다.

참고: SQL Server Native Client ODBC 드라이버는 SQL Server 6.5 이하에 대한 연결을 지원합니다.
LONG 데이터 형식 실행 시 데이터 매개 변수는 SQL_LONGVARBINARY 및 SQL_LONGVARCHAR 데이터 형식 모두에 대해 제한됩니다.
큰 값 형식 SQL Server Native Client ODBC 드라이버는 ODBC SQL 데이터 형식을 수락하거나 반환하는 API에서 varchar(max), varbinary(max)nvarchar(max) 형식을 각각 SQL_VARCHAR, SQL_VARBINARY 및 SQL_WVARCHAR 노출합니다.
UDT(사용자 정의 형식) UDT 열은 SQL_SS_UDT로 매핑됩니다. UDT의 ToString() 또는 ToXMLString() 메서드를 사용하거나 CAST/CONVERT 함수를 통해 SQL 문에서 명시적으로 UDT 열이 다른 형식에 매핑되어 있으면 결과 집합의 열 형식은 해당 열이 변환된 실제 형식을 반영합니다.

SQL Server Native Client ODBC 드라이버는 UDT 열에 이진 파일로만 바인딩할 수 있습니다. SQL Server SQL_SS_UDT 데이터 형식과 SQL_C_BINARY 데이터 형식 간의 변환만 지원합니다.
XML SQL Server XML을 유니코드 텍스트로 자동으로 변환합니다. XML 유형은 SQL_SS_XML로 매핑됩니다.

참고 항목

결과 처리(ODBC)