Microsoft SQL Server JDBC Driver 使用 JDBC 基本数据类型将 SQL Server 数据类型转换为 Java 编程语言能够理解的格式,或者反过来。从 Microsoft SQL Server JDBC Driver 2.0 开始,JDBC 驱动程序提供对 JDBC 4.0 API 的支持,后者包括 SQLXML 数据类型和 National (Unicode) 数据类型,例如 NCHAR 、NVARCHAR 、LONGNVARCHAR 和 NCLOB 。
下表列出了基本 SQL Server、JDBC 和 Java 编程语言数据类型之间的默认映射:
SQL Server 类型 | JDBC 类型 (java.sql.Types) | Java 语言类型 |
---|---|---|
bigint | BIGINT | long |
timestamp binary | BINARY | byte[] |
bit | BIT | boolean |
char | CHAR | String |
decimal money smallmoney | DECIMAL | java.math.BigDecimal |
float | DOUBLE | double |
int | INTEGER | int |
image varbinary(max) | LONGVARBINARY | byte[] |
varchar(max) text | LONGVARCHAR | String |
nchar | CHAR NCHAR (Java SE 6.0) | String |
nvarchar | VARCHAR NVARCHAR (Java SE 6.0) | String |
nvarchar(max) ntext | LONGVARCHAR LONGNVARCHAR (Java SE 6.0) | String |
numeric | NUMERIC | java.math.BigDecimal |
real | REAL | float |
smallint | SMALLINT | short |
datetime smalldatetime | TIMESTAMP | java.sql.Timestamp |
varbinary udt | VARBINARY | byte[] |
varchar | VARCHAR | String |
tinyint | TINYINT | short |
uniqueidentifier | CHAR | String |
xml | LONGVARCHAR SQLXML (Java SE 6.0) | String SQLXML |
time | TIME (1) | java.sql.Time (1) |
date | DATE | java.sql.Date |
datetime2 | TIMESTAMP | java.sql.Timestamp |
datetimeoffset (2) | microsoft.sql.Types.DATETIMEOFFSET | microsoft.sql.DateTimeOffset |