Microsoft SQL Server JDBC Driver 使用 JDBC 基礎資料型別 (Elementary Data Type)將 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 |