【发布时间】:2013-05-26 05:01:00
【问题描述】:
我正在 oracle 中创建下表:
CREATE TABLE TEST
(
DKEY INTEGER NOT NULL PRIMARY KEY,
NOM VARCHAR2(255) NOT NULL
)
当我尝试使用此 java 代码获取 DKEY 字段的类型时,我得到以下结果:
DatabaseMetaData md = cnx.getMetaData();
ResultSet rsmd = md.getColumns(null, strSchema, strTableName, "%");
while (rsmd != null && rsmd.next()) {
String strTmp = rsmd.getString("SQL_DATA_TYPE"); // this return 0 for field DKEY
int intDType = rsmd.getInt("DATA_TYPE"); // this return 3 for field DKEY
String strFType = rsmd.getString("TYPE_NAME") // this return NUMBER for field DKEY
}
为什么我得到的是 NUMBER 而不是 INTEGER?
【问题讨论】:
-
您是否阅读了 Oracle 手册中描述可用数据类型的章节?因为那确实回答了你的问题。
标签: java oracle sqldatatypes