![]() |
621 B
|
223 KB
![]() |
609 B
![]() |
142 B
![]() |
619 B
![]() |
616 B
Reproducible in v15 and v16 builds.
- Converting MySQL ER Model from MySQL to MongoDB with TIME datatype , gets mapped to String instead of Timestamp.
- Converting MySQL ER Model from MySQL to SQlite with TIME datatype , gets mapped to Numeric instead of Timestamp.
- Converting MySQL ER Model from MySQL to VoltDB with TIME datatype , gets mapped to Varchar instead of Timestamp.
- Converting MySQL ER Model from MySQL to MongoDB with TIME datatype , gets mapped to String instead of Timestamp.
- Converting MySQL ER Model from MySQL to SQlite with TIME datatype , gets mapped to Numeric instead of Timestamp.
- Converting MySQL ER Model from MySQL to VoltDB with TIME datatype , gets mapped to Varchar instead of Timestamp.
Converting MySQL ER Model from MySQL to Oracle with TIME datatype , gets mapped to Date instead of Timestamp
Converting MySQL ER Model from MySQL to Oracle with TIME datatype , gets mapped to Date instead of Timestamp
@ivan: if the changes are MySQL specific, then go ahead & make them. If the changes will impact other DBs as well, then move it to v20.
@ivan: if the changes are MySQL specific, then go ahead & make them. If the changes will impact other DBs as well, then move it to v20.
public EColumn createColumn(DDesc d, String name) { if (d.isString()) { DDesc.STRING dd = d.getString(); if (dd.isVariable()) { return new EColumn(VARCHAR, name, dd.getLength()); } else { return new EColumn(CHAR, name, dd.getLength()); } } else if (d.isNumber()) { DDesc.NUMBER dd = d.getNumber(); if (dd.isFloatPoint()) { if (dd.getWidth() > 32) { return new EColumn(FLOAT8, name); } else { return new EColumn(FLOAT4, name); } } else if (dd.isInteger()) { if (dd.getWidth() > 32) { return new EColumn(BIGINT, name); } else if (dd.getWidth() > 16) { return new EColumn(INT, name); } else if (dd.getWidth() > 1) { return new EColumn(SMALLINT, name); } else { return new EColumn(BOOLEAN, name); } } else { return new EColumn(DECIMAL, name, dd.getPrecision(), dd.getScale()); } } else if (d.isDate()) { return new EColumn(DATE, name); } else if (d.isDateTime() || d.isTime()) { return new EColumn(TIMESTAMP, name); } else if (d.isBit()) { DDesc.BIT dd = d.getBit(); return new EColumn(VARCHAR, name, dd.getByteLength(CHAR_LIMIT)); } return null; }
public EColumn createColumn(DDesc d, String name) { if (d.isString()) { DDesc.STRING dd = d.getString(); if (dd.isVariable()) { return new EColumn(VARCHAR, name, dd.getLength()); } else { return new EColumn(CHAR, name, dd.getLength()); } } else if (d.isNumber()) { DDesc.NUMBER dd = d.getNumber(); if (dd.isFloatPoint()) { if (dd.getWidth() > 32) { return new EColumn(FLOAT8, name); } else { return new EColumn(FLOAT4, name); } } else if (dd.isInteger()) { if (dd.getWidth() > 32) { return new EColumn(BIGINT, name); } else if (dd.getWidth() > 16) { return new EColumn(INT, name); } else if (dd.getWidth() > 1) { return new EColumn(SMALLINT, name); } else { return new EColumn(BOOLEAN, name); } } else { return new EColumn(DECIMAL, name, dd.getPrecision(), dd.getScale()); } } else if (d.isDate()) { return new EColumn(DATE, name); } else if (d.isDateTime() || d.isTime()) { return new EColumn(TIMESTAMP, name); } else if (d.isBit()) { DDesc.BIT dd = d.getBit(); return new EColumn(VARCHAR, name, dd.getByteLength(CHAR_LIMIT)); } return null; }
Issue #13531 |
New |
Completion |
No due date |
No fixed build |
No time estimate |
Reproducible in v15 and v16 builds.