@Override protected Column readColumn(DatabaseMetaDataWrapper metaData, Map<String,Object> values) throws SQLException { Column column = super.readColumn(metaData, values); String defaultValue = column.getDefaultValue(); if (defaultValue != null) { // we check for these strings // GENERATED_BY_DEFAULT -> 'GENERATED BY DEFAULT AS IDENTITY' // AUTOINCREMENT: start 1 increment 1 -> 'GENERATED ALWAYS AS // IDENTITY' if ("GENERATED_BY_DEFAULT".equals(defaultValue) || defaultValue.startsWith("AUTOINCREMENT:")) { column.setDefaultValue(null); column.setAutoIncrement(true); } else if (TypeMap.isTextType(column.getMappedTypeCode())) { column.setDefaultValue(unescape(defaultValue, "'", "''")); } } return column; }
newDefault.append("'"); column.setDefaultValue(newDefault.toString()); column.setDefaultValue(newDefault.toString()); defaultValue = defaultValue.substring(1, defaultValue.length()-1); column.setDefaultValue(unescape(defaultValue, "'", "''"));
protected Table postprocessTableFromDatabase(Table table) { if (table != null) { for (int columnIdx = 0; columnIdx < table.getColumnCount(); columnIdx++) { Column column = table.getColumn(columnIdx); if (TypeMap.isTextType(column.getMappedTypeCode()) || TypeMap.isDateTimeType(column.getMappedTypeCode())) { String defaultValue = column.getDefaultValue(); if ((defaultValue != null) && (defaultValue.length() >= 2) && defaultValue.startsWith("'") && defaultValue.endsWith("'")) { defaultValue = defaultValue.substring(1, defaultValue.length() - 1); column.setDefaultValue(defaultValue); } } } } return table; }
@Override protected Column readColumn(DatabaseMetaDataWrapper metaData, Map<String, Object> values) throws SQLException { Column column = super.readColumn(metaData, values); // MySQL converts illegal date/time/timestamp values to // "0000-00-00 00:00:00", but this // is an illegal ISO value, so we replace it with NULL if ((column.getMappedTypeCode() == Types.TIMESTAMP) && "0000-00-00 00:00:00".equals(column.getDefaultValue())) { column.setDefaultValue(null); } // make sure the defaultvalue is null when an empty is returned. if ("".equals(column.getDefaultValue())) { column.setDefaultValue(null); } if (column.getJdbcTypeName().equalsIgnoreCase(TypeMap.POINT) || column.getJdbcTypeName().equalsIgnoreCase(TypeMap.LINESTRING) || column.getJdbcTypeName().equalsIgnoreCase(TypeMap.POLYGON) ) { column.setJdbcTypeName(TypeMap.GEOMETRY); } return column; }
defaultValue = defaultValue.substring("DEFAULT ".length()); column.setDefaultValue(defaultValue);
@Override protected Column readColumn(DatabaseMetaDataWrapper metaData, Map<String, Object> values) throws SQLException { Column column = super.readColumn(metaData, values); if (TypeMap.isTextType(column.getMappedTypeCode()) && (column.getDefaultValue() != null)) { column.setDefaultValue(unescape(column.getDefaultValue(), "'", "''")); } String autoIncrement = (String) values.get("IS_AUTOINCREMENT"); if (autoIncrement != null) { column.setAutoIncrement("YES".equalsIgnoreCase(autoIncrement.trim())); } return column; }
column.setDefaultValue(values.get("COLUMN_DEFAULT").toString()); column.setDefaultValue(unescape(column.getDefaultValue(), "'", "''")); if (autoIncrement != null && "YES".equalsIgnoreCase(autoIncrement.trim())) { column.setAutoIncrement(true); column.setDefaultValue(null);
column.setDefaultValue(timestamp.toString()); column.setDefaultValue(unescape(column.getDefaultValue(), "'", "''"));
column.setDefaultValue(defaultValue);
column.setDefaultValue(timestamp.toString()); column.setDefaultValue(unescape(column.getDefaultValue(), "'", "''"));
column.setDefaultValue(defaultValue.trim());
@Override protected Column readColumn(DatabaseMetaDataWrapper metaData, Map<String, Object> values) throws SQLException { Column column = super.readColumn(metaData, values); if (TypeMap.isTextType(column.getMappedTypeCode()) && (column.getDefaultValue() != null)) { column.setDefaultValue(unescape(column.getDefaultValue(), "'", "''")); } return column; }
@Override protected Column readColumn(DatabaseMetaDataWrapper metaData, Map<String,Object> values) throws SQLException { Column column = super.readColumn(metaData, values); if (column.getMappedTypeCode() == Types.FLOAT) { column.setMappedTypeCode(Types.REAL); } else if (TypeMap.isTextType(column.getMappedTypeCode())) { column.setDefaultValue(unescape(column.getDefaultValue(), "'", "''")); } return column; }
column.setDefaultValue(timestamp.toString()); column.setDefaultValue(unescape(column.getDefaultValue(), "'", "''"));
protected void adjustColumns(Table table) { Column[] columns = table.getColumns(); for (int idx = 0; idx < columns.length; idx++) { if (columns[idx].getMappedTypeCode() == Types.FLOAT) { columns[idx].setMappedTypeCode(Types.REAL); } else if ((columns[idx].getMappedTypeCode() == Types.NUMERIC) || (columns[idx].getMappedTypeCode() == Types.DECIMAL)) { if ((columns[idx].getMappedTypeCode() == Types.NUMERIC) && (columns[idx].getSizeAsInt() == 18) && (columns[idx].getScale() == 0)) { columns[idx].setMappedTypeCode(Types.BIGINT); } } else if (TypeMap.isTextType(columns[idx].getMappedTypeCode())) { columns[idx].setDefaultValue(unescape(columns[idx].getDefaultValue(), "'", "''")); } } }
column.setDefaultValue(defaultValue);