14 个解决方案
#1
是不是自动下溯造型了
#2
不用getObject不就行了么
#3
TO:找抽
8是吧?java.sql.Types中有TIMESTAMP呀
而且,java.sql.Timestamp和java.sql.Date是并列的,都继承自java.util.Date
TO: peterguan(糖糖)
嗯,我是想如果能找到原因就更好了
8是吧?java.sql.Types中有TIMESTAMP呀
而且,java.sql.Timestamp和java.sql.Date是并列的,都继承自java.util.Date
TO: peterguan(糖糖)
嗯,我是想如果能找到原因就更好了
#4
将帖子提前
#5
看来是没人能说出所以然了,就当散分了吧
#6
总有知道的,帮楼主up
#7
不光在oracle里是这样,在其他数据库里好像都是这样。
#8
这个问题果然有点意思。
估计是跟ORACLE的JDBC实现有关
不知道楼主用的是否ORACLE的官方实现
我反编译ORACLE的看了下
是返回oracle.sql.DATE类型
new oracle.sql.DATE(byte[]);
靠,不知道怎么这个byte[]就被它变成Timestamp了
没再看下去
太浪费时间了
估计是跟ORACLE的JDBC实现有关
不知道楼主用的是否ORACLE的官方实现
我反编译ORACLE的看了下
是返回oracle.sql.DATE类型
new oracle.sql.DATE(byte[]);
靠,不知道怎么这个byte[]就被它变成Timestamp了
没再看下去
太浪费时间了
#9
在sqlserver里有和DATE相对应的类型么?
#10
虽然问题没解决,但是时间也很长了,下午下班前揭帖
#11
关注
#12
应该和ORALCE JDBC的版本有关
Timestamp 也是标准来着,原先我们公司做电信的都用这种类型和数据打交道。
Timestamp 也是标准来着,原先我们公司做电信的都用这种类型和数据打交道。
#13
希望这个对你有帮助。
try {
// Get database meta data
DatabaseMetaData dbmd = connection.getMetaData();
// Get type info
ResultSet resultSet = dbmd.getTypeInfo();
// Retrieve type info from the result set
while (resultSet.next()) {
// Get the database-specific type name
String typeName = resultSet.getString("TYPE_NAME");
// Get the java.sql.Types type to which this database-specific type is mapped
short dataType = resultSet.getShort("DATA_TYPE");
// Get the name of the java.sql.Types value.
// This method is implemented in e291 Getting the Name of a JDBC Type
String jdbcTypeName = getJdbcTypeName(dataType);
}
} catch (SQLException e) {
}
Here's an example of output for the MySQL database:
MySQL Type Name, JDBC Type Name
TINYINT, TINYINT
BIGINT, BIGINT
MEDIUMBLOB, LONGVARBINARY
MEDIUMTEXT, LONGVARBINARY
LONGBLOB, LONGVARBINARY
LONGTEXT, LONGVARBINARY
BLOB, LONGVARBINARY
TEXT, LONGVARBINARY
TINYBLOB, VARBINARY
TINYTEXT, VARBINARY
CHAR, CHAR
NUMERIC, NUMERIC
DECIMAL, DECIMAL
INT, INTEGER
MEDIUMINT, INTEGER
SMALLINT, SMALLINT
FLOAT, FLOAT
DOUBLE, DOUBLE
DOUBLE PRECISION, DOUBLE
REAL, DOUBLE
VARCHAR, VARCHAR
ENUM, VARCHAR
SET, VARCHAR
DATE, DATE
TIME, TIME
DATETIME, TIMESTAMP
TIMESTAMP, TIMESTAMP
try {
// Get database meta data
DatabaseMetaData dbmd = connection.getMetaData();
// Get type info
ResultSet resultSet = dbmd.getTypeInfo();
// Retrieve type info from the result set
while (resultSet.next()) {
// Get the database-specific type name
String typeName = resultSet.getString("TYPE_NAME");
// Get the java.sql.Types type to which this database-specific type is mapped
short dataType = resultSet.getShort("DATA_TYPE");
// Get the name of the java.sql.Types value.
// This method is implemented in e291 Getting the Name of a JDBC Type
String jdbcTypeName = getJdbcTypeName(dataType);
}
} catch (SQLException e) {
}
Here's an example of output for the MySQL database:
MySQL Type Name, JDBC Type Name
TINYINT, TINYINT
BIGINT, BIGINT
MEDIUMBLOB, LONGVARBINARY
MEDIUMTEXT, LONGVARBINARY
LONGBLOB, LONGVARBINARY
LONGTEXT, LONGVARBINARY
BLOB, LONGVARBINARY
TEXT, LONGVARBINARY
TINYBLOB, VARBINARY
TINYTEXT, VARBINARY
CHAR, CHAR
NUMERIC, NUMERIC
DECIMAL, DECIMAL
INT, INTEGER
MEDIUMINT, INTEGER
SMALLINT, SMALLINT
FLOAT, FLOAT
DOUBLE, DOUBLE
DOUBLE PRECISION, DOUBLE
REAL, DOUBLE
VARCHAR, VARCHAR
ENUM, VARCHAR
SET, VARCHAR
DATE, DATE
TIME, TIME
DATETIME, TIMESTAMP
TIMESTAMP, TIMESTAMP
#14
object obj=(java.util.Date) *.getObject;
#1
是不是自动下溯造型了
#2
不用getObject不就行了么
#3
TO:找抽
8是吧?java.sql.Types中有TIMESTAMP呀
而且,java.sql.Timestamp和java.sql.Date是并列的,都继承自java.util.Date
TO: peterguan(糖糖)
嗯,我是想如果能找到原因就更好了
8是吧?java.sql.Types中有TIMESTAMP呀
而且,java.sql.Timestamp和java.sql.Date是并列的,都继承自java.util.Date
TO: peterguan(糖糖)
嗯,我是想如果能找到原因就更好了
#4
将帖子提前
#5
看来是没人能说出所以然了,就当散分了吧
#6
总有知道的,帮楼主up
#7
不光在oracle里是这样,在其他数据库里好像都是这样。
#8
这个问题果然有点意思。
估计是跟ORACLE的JDBC实现有关
不知道楼主用的是否ORACLE的官方实现
我反编译ORACLE的看了下
是返回oracle.sql.DATE类型
new oracle.sql.DATE(byte[]);
靠,不知道怎么这个byte[]就被它变成Timestamp了
没再看下去
太浪费时间了
估计是跟ORACLE的JDBC实现有关
不知道楼主用的是否ORACLE的官方实现
我反编译ORACLE的看了下
是返回oracle.sql.DATE类型
new oracle.sql.DATE(byte[]);
靠,不知道怎么这个byte[]就被它变成Timestamp了
没再看下去
太浪费时间了
#9
在sqlserver里有和DATE相对应的类型么?
#10
虽然问题没解决,但是时间也很长了,下午下班前揭帖
#11
关注
#12
应该和ORALCE JDBC的版本有关
Timestamp 也是标准来着,原先我们公司做电信的都用这种类型和数据打交道。
Timestamp 也是标准来着,原先我们公司做电信的都用这种类型和数据打交道。
#13
希望这个对你有帮助。
try {
// Get database meta data
DatabaseMetaData dbmd = connection.getMetaData();
// Get type info
ResultSet resultSet = dbmd.getTypeInfo();
// Retrieve type info from the result set
while (resultSet.next()) {
// Get the database-specific type name
String typeName = resultSet.getString("TYPE_NAME");
// Get the java.sql.Types type to which this database-specific type is mapped
short dataType = resultSet.getShort("DATA_TYPE");
// Get the name of the java.sql.Types value.
// This method is implemented in e291 Getting the Name of a JDBC Type
String jdbcTypeName = getJdbcTypeName(dataType);
}
} catch (SQLException e) {
}
Here's an example of output for the MySQL database:
MySQL Type Name, JDBC Type Name
TINYINT, TINYINT
BIGINT, BIGINT
MEDIUMBLOB, LONGVARBINARY
MEDIUMTEXT, LONGVARBINARY
LONGBLOB, LONGVARBINARY
LONGTEXT, LONGVARBINARY
BLOB, LONGVARBINARY
TEXT, LONGVARBINARY
TINYBLOB, VARBINARY
TINYTEXT, VARBINARY
CHAR, CHAR
NUMERIC, NUMERIC
DECIMAL, DECIMAL
INT, INTEGER
MEDIUMINT, INTEGER
SMALLINT, SMALLINT
FLOAT, FLOAT
DOUBLE, DOUBLE
DOUBLE PRECISION, DOUBLE
REAL, DOUBLE
VARCHAR, VARCHAR
ENUM, VARCHAR
SET, VARCHAR
DATE, DATE
TIME, TIME
DATETIME, TIMESTAMP
TIMESTAMP, TIMESTAMP
try {
// Get database meta data
DatabaseMetaData dbmd = connection.getMetaData();
// Get type info
ResultSet resultSet = dbmd.getTypeInfo();
// Retrieve type info from the result set
while (resultSet.next()) {
// Get the database-specific type name
String typeName = resultSet.getString("TYPE_NAME");
// Get the java.sql.Types type to which this database-specific type is mapped
short dataType = resultSet.getShort("DATA_TYPE");
// Get the name of the java.sql.Types value.
// This method is implemented in e291 Getting the Name of a JDBC Type
String jdbcTypeName = getJdbcTypeName(dataType);
}
} catch (SQLException e) {
}
Here's an example of output for the MySQL database:
MySQL Type Name, JDBC Type Name
TINYINT, TINYINT
BIGINT, BIGINT
MEDIUMBLOB, LONGVARBINARY
MEDIUMTEXT, LONGVARBINARY
LONGBLOB, LONGVARBINARY
LONGTEXT, LONGVARBINARY
BLOB, LONGVARBINARY
TEXT, LONGVARBINARY
TINYBLOB, VARBINARY
TINYTEXT, VARBINARY
CHAR, CHAR
NUMERIC, NUMERIC
DECIMAL, DECIMAL
INT, INTEGER
MEDIUMINT, INTEGER
SMALLINT, SMALLINT
FLOAT, FLOAT
DOUBLE, DOUBLE
DOUBLE PRECISION, DOUBLE
REAL, DOUBLE
VARCHAR, VARCHAR
ENUM, VARCHAR
SET, VARCHAR
DATE, DATE
TIME, TIME
DATETIME, TIMESTAMP
TIMESTAMP, TIMESTAMP
#14
object obj=(java.util.Date) *.getObject;