I agree that we should probably eliminate size from the meta model and just encode it in the column type. I didn't see a way in the jdbc meta data. We can reconstruct it but need to consider all the cases. SQLite keeps the size in the name and provides a bogus value for size (not null). Hsqldb and derby use size to represent the database size, but do not accept a size ascription in DDL for types, that have a fixed size in them (INTEGER, SMALL_INT, BOOLEAN, etc), but for others they need it. Others split off and happily accept it ascribed. I think we need to be driver specific here (i.e. move createMetaModel into the profiles).