ITableDefinition의 SQL Server Native Client 데이터 형식 매핑SQL Server Native Client Data Type Mapping in ITableDefinition

적용 대상:Applies to: 예SQL ServerSQL Server(지원되는 모든 버전)yesSQL ServerSQL Server (all supported versions) 예Azure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database 예Azure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance 예Azure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics 예병렬 데이터 웨어하우스Parallel Data Warehouseyes병렬 데이터 웨어하우스Parallel Data Warehouse적용 대상:Applies to: 예SQL ServerSQL Server(지원되는 모든 버전)yesSQL ServerSQL Server (all supported versions) 예Azure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database 예Azure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance 예Azure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics 예병렬 데이터 웨어하우스Parallel Data Warehouseyes병렬 데이터 웨어하우스Parallel Data Warehouse

Itabledefinition:: CreateTable 함수를 사용 하 여 테이블을 만들 때 SQL ServerSQL Server Native Client OLE DB 공급자 소비자는 SQL ServerSQL Server 전달 되는 DBCOLUMNDESC 배열의 pwszTypeName 멤버에서 데이터 형식을 지정할 수 있습니다.When creating tables by using the ITableDefinition::CreateTable function, the SQL ServerSQL Server Native Client OLE DB provider consumer can specify SQL ServerSQL Server data types in the pwszTypeName member of the DBCOLUMNDESC array that is passed. 소비자가 열의 데이터 형식을 이름으로 지정하면 DBCOLUMNDESC 구조의 wType 멤버로 표시되는 OLE DB 데이터 형식 매핑이 무시됩니다.If the consumer specifies the data type of a column by name, OLE DB data type mapping, represented by the wType member of the DBCOLUMNDESC structure, is ignored.

DBCOLUMNDESC structure Wtype 멤버를 사용 하 여 OLE DB 데이터 형식을 사용 하 여 새 열 데이터 형식을 지정할 때 SQL ServerSQL Server Native Client OLE DB 공급자는 다음과 같이 OLE DB 데이터 형식을 매핑합니다.When specifying new column data types with OLE DB data types using the DBCOLUMNDESC structure wType member, the SQL ServerSQL Server Native Client OLE DB provider maps OLE DB data types as follows.

OLE DB 데이터 형식OLE DB data type SQL ServerSQL Server

데이터 형식data type
추가 정보Additional information
DBTYPE_BOOLDBTYPE_BOOL bitbit
DBTYPE_BYTESDBTYPE_BYTES binary, varbinary, image 또는 varbinary(max)binary, varbinary, image, or varbinary(max) SQL ServerSQL ServerNative Client OLE DB 공급자는 DBCOLUMNDESC 구조의 Ulcolumnsize 멤버를 검사 합니다.The SQL ServerSQL Server Native Client OLE DB provider inspects the ulColumnSize member of the DBCOLUMNDESC structure. 이 값과 인스턴스의 버전을 기준으로 SQL ServerSQL Server SQL ServerSQL Server Native Client OLE DB 공급자는 형식을 image 에 매핑합니다.Based on the value, and version of the SQL ServerSQL Server instance, the SQL ServerSQL Server Native Client OLE DB provider maps the type to image.

Ulcolumnsize 값이 이진 데이터 형식 열의 최대 길이 보다 작으면 SQL ServerSQL Server NATIVE Client OLE DB 공급자가 DBCOLUMNDESC rgPropertySets 멤버를 검사 합니다.If the value of ulColumnSize is smaller than the maximum length of a binary data type column, then the SQL ServerSQL Server Native Client OLE DB provider inspects the DBCOLUMNDESC rgPropertySets member. DBPROP_COL_FIXEDLENGTH VARIANT_TRUE 되는 경우 SQL ServerSQL Server Native Client OLE DB 공급자는 형식을 이진 에 매핑합니다.If DBPROP_COL_FIXEDLENGTH is VARIANT_TRUE, the SQL ServerSQL Server Native Client OLE DB provider maps the type to binary. 속성의 값이 VARIANT_FALSE 이면 SQL ServerSQL Server Native Client OLE DB 공급자는 형식을 varbinary 에 매핑합니다.If the value of the property is VARIANT_FALSE, the SQL ServerSQL Server Native Client OLE DB provider maps the type to varbinary. 두 경우 모두 생성되는 SQL Server 열의 너비는 DBCOLUMNDESC ulColumnSize 멤버에 따라 결정됩니다.In either case, the DBCOLUMNDESC ulColumnSize member determines the width of the SQL Server column created.
DBTYPE_CYDBTYPE_CY moneymoney
DBTYPE_DBTIMESTAMPDBTYPE_DBTIMESTAMP datetimedatetime
DBTYPE_GUIDDBTYPE_GUID uniqueidentifieruniqueidentifier
DBTYPE_I2DBTYPE_I2 smallintsmallint
DBTYPE_I4DBTYPE_I4 intint
DBTYPE_NUMERICDBTYPE_NUMERIC numericnumeric SQL ServerSQL ServerNative Client OLE DB 공급자는 DBCOLUMDESC Bprecisionbprecision 멤버를 검사 하 여 숫자 열의 전체 자릿수와 소수 자릿수를 확인 합니다.The SQL ServerSQL Server Native Client OLE DB provider inspects the DBCOLUMDESC bPrecision and bScale members to determine precision and scale for the numeric column.
DBTYPE_R4DBTYPE_R4 realreal
DBTYPE_R8DBTYPE_R8 floatfloat
DBTYPE_STRDBTYPE_STR char, varchar, text 또는 varchar(max)char, varchar, text, or varchar(max) SQL ServerSQL ServerNative Client OLE DB 공급자는 DBCOLUMNDESC 구조의 Ulcolumnsize 멤버를 검사 합니다.The SQL ServerSQL Server Native Client OLE DB provider inspects the ulColumnSize member of the DBCOLUMNDESC structure. 인스턴스 값 및 버전에 따라 SQL ServerSQL Server SQL ServerSQL Server Native Client OLE DB 공급자는 형식을 텍스트 에 매핑합니다.Based on the value and version of the SQL ServerSQL Server instance, the SQL ServerSQL Server Native Client OLE DB provider maps the type to text.

Ulcolumnsize 값이 멀티 바이트 문자 데이터 형식 열의 최대 길이 보다 작으면 SQL ServerSQL Server Native Client OLE DB 공급자가 DBCOLUMNDESC rgPropertySets 멤버를 검사 합니다.If the value of ulColumnSize is smaller than the maximum length of a multibyte character data type column, then the SQL ServerSQL Server Native Client OLE DB provider inspects the DBCOLUMNDESC rgPropertySets member. DBPROP_COL_FIXEDLENGTH VARIANT_TRUE 되는 경우 SQL ServerSQL Server Native Client OLE DB 공급자는 형식을 char 에 매핑합니다.If DBPROP_COL_FIXEDLENGTH is VARIANT_TRUE, the SQL ServerSQL Server Native Client OLE DB provider maps the type to char. 속성의 값이 VARIANT_FALSE 이면 SQL ServerSQL Server Native Client OLE DB 공급자는 형식을 varchar 에 매핑합니다.If the value of the property is VARIANT_FALSE, the SQL ServerSQL Server Native Client OLE DB provider maps the type to varchar. 두 경우 모두 생성되는 SQL ServerSQL Server 열의 너비는 DBCOLUMNDESC ulColumnSize 멤버에 따라 결정됩니다.In either case, the DBCOLUMNDESC ulColumnSize member determines the width of the SQL ServerSQL Server column created.
DBTYPE_UDTDBTYPE_UDT UDTUDT UDT 열이 필요한 경우 ITableDefinition::CreateTable 에서 DBCOLUMNDESC 구조에 사용하는 정보는 다음과 같습니다.The following information is used in DBCOLUMNDESC structures by ITableDefinition::CreateTable when UDT columns are required:

pwSzTypeName 은 무시됩니다.pwSzTypeName is ignored.

rgPropertySets사용자 정의 형식 사용DBPROPSET_SQLSERVERCOLUMN 섹션에 설명된 대로 DBPROPSET_SQLSERVERCOLUMN 속성 집합을 포함해야 합니다.rgPropertySets must include a DBPROPSET_SQLSERVERCOLUMN property set as described in the section on DBPROPSET_SQLSERVERCOLUMN, in Using User-Defined Types.
DBTYPE_UI1DBTYPE_UI1 tinyinttinyint
DBTYPE_WSTRDBTYPE_WSTR nchar, nvarchar, ntext 또는 nvarchar(max)nchar, nvarchar, ntext, or nvarchar(max) SQL ServerSQL ServerNative Client OLE DB 공급자는 DBCOLUMNDESC 구조의 Ulcolumnsize 멤버를 검사 합니다.The SQL ServerSQL Server Native Client OLE DB provider inspects the ulColumnSize member of the DBCOLUMNDESC structure. 값을 기준으로 SQL ServerSQL Server Native Client OLE DB 공급자는 형식을 ntext 에 매핑합니다.Based on the value, the SQL ServerSQL Server Native Client OLE DB provider maps the type to ntext.

Ulcolumnsize 값이 유니코드 문자 데이터 형식 열의 최대 길이 보다 작으면 SQL ServerSQL Server Native Client OLE DB 공급자가 DBCOLUMNDESC rgPropertySets 멤버를 검사 합니다.If the value of ulColumnSize is smaller than the maximum length of a Unicode character data type column, then the SQL ServerSQL Server Native Client OLE DB provider inspects the DBCOLUMNDESC rgPropertySets member. DBPROP_COL_FIXEDLENGTH VARIANT_TRUE 되는 경우 SQL ServerSQL Server Native Client OLE DB 공급자는 형식을 nchar 에 매핑합니다.If DBPROP_COL_FIXEDLENGTH is VARIANT_TRUE, the SQL ServerSQL Server Native Client OLE DB provider maps the type to nchar. 속성의 값이 VARIANT_FALSE 이면 SQL ServerSQL Server Native Client OLE DB 공급자는 형식을 nvarchar 에 매핑합니다.If the value of the property is VARIANT_FALSE, the SQL ServerSQL Server Native Client OLE DB provider maps the type to nvarchar. 두 경우 모두 생성되는 SQL ServerSQL Server 열의 너비는 DBCOLUMNDESC ulColumnSize 멤버에 따라 결정됩니다.In either case, the DBCOLUMNDESC ulColumnSize member determines the width of the SQL ServerSQL Server column created.
DBTYPE_XMLDBTYPE_XML XMLXML

注意

새 테이블을 만들 때 SQL ServerSQL Server Native Client OLE DB 공급자는 위 표에 지정된 OLE DB 데이터 형식 열거형 값만 매핑합니다.When creating a new table, the SQL ServerSQL Server Native Client OLE DB provider maps only the OLE DB data type enumeration values specified in the preceding table. 다른 OLE DB 데이터 형식의 열로 테이블을 만들려고 하면 오류가 생성됩니다.Attempting to create a table with a column of any other OLE DB data type generates an error.

참고 항목See Also

데이터 형식(OLE DB)Data Types (OLE DB)