데이터베이스 자료형과 맵핑되는 JAVA의 자료형
출처 : IBM Knowledge Center
데이터베이스 자료형과 자바JAVA(JDBC) 매칭 매치 맵핑 자료형 맞추기
테이블 컬럼 갱신을 위한 자료형
Java 자료형 |
데이터베이스 자료형 |
---|---|
short, java.lang.Short | SMALLINT |
short, java.lang.Short | BOOLEAN |
boolean, java.lang.Boolean | BOOLEAN |
int, java.lang.Integer | INTEGER |
int, java.lang.Integer | SERIAL |
long, java.lang.Long | INT8 |
long, java.lang.Long | BIGINT |
long, java.lang.Long | SERIAL8 |
long, java.lang.Long | BIGSERIAL |
float, java.lang.Float | SMALLFLOAT |
double, java.lang.Double | FLOAT |
java.math.BigDecimal | DECIMAL(p,s)1 |
java.math.BigDecimal | DECIMAL(p)2 |
java.math.BigDecimal | DECIMAL3 |
java.math.BigDecimal | MONEY(p,s)1 |
java.lang.String | CHAR(n)4 |
java.lang.String | NCHAR(n)4 |
java.lang.String | VARCHAR(m,r)5 |
java.lang.String | LVARCHAR(m,r)6 |
java.lang.String | NVARCHAR(m,r)6 |
java.lang.String | INTERVAL |
java.lang.String | CLOB7 |
byte[] | BYTE |
byte[] | BLOB7 |
java.sql.Blob | BLOB |
java.sql.Clob | CLOB |
java.lang.Clob | TEXT |
java.sql.Date | DATE |
java.sql.Time | DATETIME HOUR TO SECOND |
java.sql.Timestamp | DATETIME YEAR TO FRACTION(5) |
java.io.ByteArrayInputStream | BLOB |
java.io.StringReader | CLOB |
java.io.ByteArrayInputStream | CLOB |
참고
- p는 10진 정밀도이고 s는 테이블 컬럼의 스케일입니다.
- ANSI 표준 데이터베이스의 경우 p는 정밀도이고 스케일은 0입니다. ANSI 표준이 아닌 데이터베이스에서 p만을 지정하는 경우 자료형은 10진 부동 소수점입니다.
- ANSI 표준 데이터베이스에서 매개변수를 지정하지 않는 경우 정밀도는 16이고 스케일은 0입니다. ANSI 표준이 아닌 데이터베이스에서 매개변수를 지정하지 않는 경우 자료형은 10진 부동 소수점입니다.
- n<=32767.
- 0<=r<=m<=255.
- 0<=r<=m<=32739.
- 이 맵핑은 데이터베이스 서버가 컬럼의 자료형을 판별할 수 있는 경우에만 유효합니다.
테이블 컬럼에서 검색할 자료형
SQL 자료형 |
권장되는 Java 자료형 또는 Java 오브젝트 유형 |
기타 지원되는 Java 자료형 |
---|---|---|
SMALLINT | short | byte, int, long, float, double, java.math.BigDecimal, boolean, java.lang.String |
BOOLEAN | boolean | short |
INTEGER | int | short, byte, long, float, double, java.math.BigDecimal, boolean, java.lang.String |
SERIAL | int | short, byte, long, float, double, java.math.BigDecimal, boolean, java.lang.String |
INT8 | long | int, short, byte, float, double, java.math.BigDecimal, boolean, java.lang.String |
BIGINT | long | int, short, byte, float, double, java.math.BigDecimal, boolean, java.lang.String |
SERIAL8 | long | int, short, byte, float, double, java.math.BigDecimal, boolean, java.lang.String |
BIGSERIAL | long | int, short, byte, float, double, java.math.BigDecimal, boolean, java.lang.String |
DECIMAL(p,s) | java.math.BigDecimal | long, int, short, byte, float, double, boolean, java.lang.String |
DECIMAL(p) | java.math.BigDecimal | long, int, short, byte, float, double, java.math.BigDecimal, boolean, java.lang.String |
MONEY(p,s) | java.math.BigDecimal | long, int, short, byte, float, double, boolean, java.lang.String |
SMALLFLOAT | float | long, int, short, byte, double, java.math.BigDecimal, boolean, java.lang.String |
FLOAT | double | long, int, short, byte, float, java.math.BigDecimal, boolean, java.lang.String |
CHAR(n) | java.lang.String | long, int, short, byte, float, double, java.math.BigDecimal, boolean, java.sql.Date, java.sql.Time, java.sql.Timestamp, java.io.InputStream, java.io.Reader |
NCHAR(n) | java.lang.String | long, int, short, byte, float, double, java.math.BigDecimal, boolean, java.sql.Date, java.sql.Time, java.sql.Timestamp, java.io.InputStream, java.io.Reader |
VARCHAR(m,r) | java.lang.String | long, int, short, byte, float, double, java.math.BigDecimal, boolean, java.sql.Date, java.sql.Time, java.sql.Timestamp, java.io.InputStream, java.io.Reader |
LVARCHAR(m,r) | java.lang.String | long, int, short, byte, float, double, java.math.BigDecimal, boolean, java.sql.Date, java.sql.Time, java.sql.Timestamp, java.io.InputStream, java.io.Reader |
NVARCHAR(n) | java.lang.String | long, int, short, byte, float, double, java.math.BigDecimal, boolean, java.sql.Date, java.sql.Time, java.sql.Timestamp, java.io.InputStream, java.io.Reader |
INTERVAL | java.lang.String | long, int, short, byte, float, double, java.math.BigDecimal, boolean, java.sql.Date, java.sql.Time, java.sql.Timestamp, java.io.InputStream, java.io.Reader |
BYTE | byte[] | 없음 |
CLOB(n) | java.sql.Clob | java.lang.String |
TEXT | java.sql.Clob | java.lang.String |
BLOB(n) | java.sql.Blob | byte[]1 |
DATE | java.sql.Date | java.sql.String, java.sql.Timestamp |
DATETIME HOUR TO SECOND | java.sql.Time | java.sql.String, java.sql.Timestamp |
DATETIME YEAR TO FRACTION(5) | java.sql.Timestamp | java.sql.String, java.sql.Date, java.sql.Time, java.sql.Timestamp |
참고
|
스토어드 프로시저 및 사용자 정의 함수 호출을 위한 자료형
Java 자료형 |
JDBC 자료형 |
SQL 자료형 |
---|---|---|
boolean, java.lang.Boolean | BIT | BOOLEAN |
boolean, java.lang.Boolean | BOOLEAN | BOOLEAN |
byte1, java.lang.Byte | TINYINT | SMALLINT |
short, java.lang.Short | SMALLINT | SMALLINT |
int, java.lang.Integer | INTEGER | INTEGER |
int, java.lang.Integer | INTEGER | SERIAL |
long, java.lang.Long | BIGINT | INT8 |
long, java.lang.Long | BIGINT | BIGINT |
long, java.lang.Long | BIGINT | SERIAL8 |
long, java.lang.Long | BIGINT | BIGSERIAL |
float, java.lang.Float | REAL | SMALLFLOAT |
float, java.lang.Float | FLOAT | SMALLFLOAT |
double, java.lang.Double | DOUBLE | FLOAT |
java.math.BigDecimal | NUMERIC | DECIMAL |
java.math.BigDecimal | DECIMAL | DECIMAL |
java.math.BigDecimal | NUMERIC | MONEY |
java.lang.String | CHAR | CHAR |
java.lang.String | CHAR | INTERVAL |
java.lang.String | CHAR | NCHAR |
java.lang.String | VARCHAR | VARCHAR |
java.lang.String | VARCHAR | NVARCHAR |
java.lang.String | LONGVARCHAR | VARCHAR |
java.lang.String | LONGVARCHAR | LVARCHAR |
java.lang.String | VARCHAR | CLOB |
java.lang.String | LONGVARCHAR | CLOB |
java.lang.String | CLOB | CLOB |
java.lang.String | CLOB | TEXT |
byte[] | BINARY | BYTE |
byte[] | VARBINARY | BYTE |
byte[] | VARBINARY | BYTE |
byte[] | LONGVARBINARY | BYTE |
byte[] | LONGVARBINARY | BLOB2 |
java.sql.Date | DATE | DATE |
java.sql.Time | TIME | DATETIME HOUR TO SECOND |
java.sql.Timestamp | TIMESTAMP | DATETIME YEAR TO FRACTION(5) |
java.sql.Blob | BLOB | BLOB |
java.sql.Clob | CLOB | CLOB |
java.io.ByteArrayInputStream | 없음 | BLOB |
java.io.StringReader | 없음 | CLOB |
java.io.ByteArrayInputStream | 없음 | CLOB |
참고
|
반응형
'Dev > JAVA' 카테고리의 다른 글
[퍼옴/메모] 이클립스 자동완성 (0) | 2018.06.19 |
---|---|
JAVA 메소드 오버로딩(Overloading) (0) | 2018.01.28 |
JAVA private 를 사용하자. 정보은닉과 캡슐화. (1) | 2018.01.20 |
JAVA super() 개념 정리하기 (0) | 2018.01.20 |
JAVA 생성자(Constructor) 개념 정리하기! (0) | 2018.01.20 |
함수, 변수, 속성, 메서드(메소드) 쉽게 구분하는 예시 (0) | 2017.10.26 |
자바스크립트 주석 처리방법 2가지 (2) | 2017.10.26 |
JAVA는 객체지향 프로그래밍 언어 (0) | 2017.06.08 |