APAR status |
Closed as program error.
| Error description
If a timestamp is passed to MSSQLPortabilityLayer createTableFor
Persister, the call:
doctoredSql = replaceString(doctoredSql, " TIME", " DATETIME");
.
Will change a TIMESTAMP to DATETIMESTAMP, which is not a valid S
QLServer data type.
TIMESTAMP is a valid type and should not be changed. Persister, the call:doctoredSql = replaceString(doctoredSql, " TIME", " DATETIME");.Will change a TIMESTAMP to DATETIMESTAMP, which is not a valid SQLServer data type.TIMESTAMP is a valid type and should not be changed. Local fixProblem summary
****************************************************************
* USERS AFFECTED: All Websphere Application Server users of *
* Microsoft SQL server as their Database. *
****************************************************************
* PROBLEM DESCRIPTION: The MSSQL portability layer was *
* converting DATE -> DATETIME, *
* TIME -> DATETIME, and DOUBLE -> FLOAT. *
* This would result in TIMESTAMP being *
* converted to DATETIMESTAMP, which is *
* not valid. *
****************************************************************
* RECOMMENDATION: *
****************************************************************
MSSQLServer does not support the DATE, TIME, or DOUBLE data
types so the createTableForPersister method converts occurrences
of these Strings as follows,
DATE --> DATETIME, TIME --> DATETIME, AND DOUBLE --> FLOAT
The problem here is that ALL occurrences of these Strings (in
this case " TIME") within the CREATE TABLE statement are being
replaced. Sometimes it is valid to do so; sometimes it is not.
In this case, the customer was correctly using another
MSSQLServer type, called TIMESTAMP, which happens to begin with
the String TIME. This was then converted to DATETIMESTAMP,
which is not a valid data type. Problem conclusion
The code was changed to increase the amount of text in the SQL
statement which must be matched for replacement. This should
avoid inadvertently converting parts of column names and other
data types. Temporary fixComments
APAR information | APAR number | PQ57523 | Reported component name | WAS STANDARD NT | Reported component ID | 5648C8301 | Reported release | 350 | Status | CLOSED PER | PE | NoPE | HIPER | NoHIPER | Submitted date | 2002-02-05 | Closed date | 2002-03-21 | Last modified date | 2002-03-21 |
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:APAR is sysrouted FROM one or more of the following:
PQ59311
Modules/Macros APAR is sysrouted TO one or more of the following:PQ59311Modules/Macros
|
Fix information |
Fixed component name | WAS STANDARD NT | Fixed component ID | 5648C8301 |
Applicable component levels | R350 PSY | UP |
|