1. Connect to Oracle.
2. Run the following query.
select current_timestamp as cur_timestamp from dual
3. The result value is always displayed in [Default] format.
4. In the Console tab of View Log, the following warning message is logged.
Warning: Class Return type not known:-101
-101 is data type TIMESTAMP WITH TIME ZONE. In File -> Options -> Results Format -> Oracle, this data type is not listed. Therefore, the format is always set to [Default].
This issue exists in v17 as well.
|
|
53 KB
|
|
114 KB
|
|
74 KB
|
|
129 KB
|
|
121 KB
In AFTableColumn, we have the following code when looking up AFTableColumnInfo.
else if ((connSettings.isOracle()) && (dataType.toUpperCase().startsWith("TIMESTAMP"))) {
// Make one last check for Oracle TIMESTAMP -- Oracle returns "TIMESTAMP(3) if precision is specified
typeInfo = (AFTableColumnInfo) rdbmsDataTypes.get("TIMESTAMP");
}
This works for the data type "TIMESTAMP WITH TIME ZONE".
Should we have the same logic in AFScriptContext when looking up the result format, such as the following logic for Informix?
if (format == null) {
if (_settings.isInformix()) {
if (theColumn.columnDataTypeName.startsWith("datetime")) {
format = (String) _formatDatatypes.get("datetime");
}
else {
format = (String) _formatDatatypes.get(lowerColumnDataTypeName[i]);
}
}
...
Yes, lets do the same for Oracle as we do for Informix.
Yes, lets do the same for Oracle as we do for Informix.
Verified in ADS 17.0.7-7 and ADS 18.0.0-devi-199. Screenshot
Verified in ADS 17.0.7-7 and ADS 18.0.0-devi-199. Screenshot
Verified in ADS 17.0.11-5 and ADS 18.0.0-preview-36
Verified in ADS 17.0.11-5 and ADS 18.0.0-preview-36
Issue #14601 |
| Closed |
| Fixed |
| Resolved |
Completion |
| No due date |
| Fixed Build ADS 17.0.7-7, 18.0.0-devi-198 |
| No time estimate |
In AFTableColumn, we have the following code when looking up AFTableColumnInfo.
else if ((connSettings.isOracle()) && (dataType.toUpperCase().startsWith("TIMESTAMP"))) { // Make one last check for Oracle TIMESTAMP -- Oracle returns "TIMESTAMP(3) if precision is specified typeInfo = (AFTableColumnInfo) rdbmsDataTypes.get("TIMESTAMP"); }This works for the data type "TIMESTAMP WITH TIME ZONE".
Should we have the same logic in AFScriptContext when looking up the result format, such as the following logic for Informix?
if (format == null) { if (_settings.isInformix()) { if (theColumn.columnDataTypeName.startsWith("datetime")) { format = (String) _formatDatatypes.get("datetime"); } else { format = (String) _formatDatatypes.get(lowerColumnDataTypeName[i]); } } ...