@Override protected void createTableBody( final StringBuilder createTableSql, final List<FieldDefinition> fieldDefinitions) { final List<FieldDefinition> keyDefinitionList = new ArrayList<FieldDefinition>(); for (FieldDefinition fieldDefinition : fieldDefinitions) { final String type = fieldDefinition.getType(); if (type == null) { throw new RuntimeException("the type of fieldDefinitions should not be null"); } final Mapping mapping = getJdbcTypeMapping().get(type); if (mapping != null) { createTableSql.append(mapping.toDataBaseSting(fieldDefinition)).append(", "); if (fieldDefinition.getIsKey()) { keyDefinitionList.add(fieldDefinition); } } else { throw new RuntimeException( "the type[" + fieldDefinition.getType() + "] is not register for mapping "); } } if (keyDefinitionList.size() < 0) { throw new RuntimeException("no key talbe is not allow"); } else { createTableSql.append(createKeyDefinition(keyDefinitionList)); } }